From a real “product description” on Amazon

The invention of wheel was a major break throw of its scientific age. Like wise we can consider internet is the one of the most influential Scientifics break throw of current age, which was only possible because of advance ever growing communication technologies. Communication between any two sources protocols can be deemed as backbone of the whole setup. Currently several protocol exist and are employed in the cutting age of the communication set up. Different protocols are invented because of different scenario of communication. UDP protocol is actively used in today’s worlds of communication, in real time with data transfer which can tolerate little loss of data and accuracy. Because of ever increasing need and significance of communication system,in this book investigated the UDP software for Ethernet Lite in the embedded system by evaluated of behaviour of some important protocols UDP, IP, ICMP and ARP. One most important thing which we have done in this book that programme memory small as we can .The memory is 10KB with the UDP/IP.

This is the (publisher’s? author’s?) official product description of UDP/IP For Embedded System: Methods, Implementation, Benchmarks, Programming,FPGA, Embedded system.

I don’t think I will be buying it.

Poisoning the internet

This news item struck me as interesting and even borderline alarming – as it suggests that 18% of all traffic (and 41% of UDP traffic) on the Internet is from one attempt to poison BitTorrentnetworks worldwide: a truly extraordinary finding, but one that seems well grounded, at least on first blush.

TCP or not TCP? That is the Question
TCP or not TCP? That is the Question (Photo credit: dullhunk)

For those who do not follow the technology: user datagram protocol (UDP) is the communications protocol used on the internet to deliver higher-speed, lighter weight communications – e.g. streaming audio (IP telephony) and video will be sent by UDP, as if you are watching live video you don’t want to recover old frames that did not get there the first time – you just skip them and move on to the next. BitTorrent uses UDP to share files – probably most often used to unlawfully spread copyright protected material but also used quite legitimately and lawful to share large files (BitTorrent is a peer-to-peer system that sees downloaders also help spread the sourced material by “re-seeding” the bits of the file already downloaded with other users).

If 18% of internet traffic is really from just from one – broken – source, as CERT Polska suggest – then plainly the scope to destroy the whole internet through congestion by deploying a few dozen similar attacks must be huge. Of course – such attacks could then be stopped by ISPs choking off BitTorrent traffic – which is perhaps what the attackers really want.

Personally, though, I’d suggest this is more likely to be some Russian gang flexing their muscles – the file which is nominally being shared by the broken BitTorrent is a movie about the August 2008 warbetween Georgia and Russia – a favourite subject for Russian crackers – who frequently mount denial of service attacks on Georgian and pro-Georgian government internet sites.

Differences between UDP and TCP

A diagram of the relationship between sequence...
Image via Wikipedia

This is another reminder post, I am afraid.

UDP – user datagram protocol – and TCP – transmission control protocol – are two transport layer protocols in the in internet stack.

UDP is a lightweight protocol and it’s key features are:

  • end to end (multiplexed and demultiplex via port numbers)
  • connectionless
  • message-orientated (ie each datagram is self-contained)
  • Best effort delivery
  • Arbitrary interaction – one application can send packets to many other applications at the same time

These characteristics make it good for applications such as streaming or broadcasting video or voice communications, where resending dropped packets would only degrade the application’s performance.

TCP’s key features are:

  • End to end (as with UDP)
  • Connection-orientated (although the IP layer underneath is fundamentally connectionless and packets are routed via switching, TCP layers connect via a three-way handshake)
  • Reliability, packets are guaranteed to be delivered without missing or duplicated date, being received as they were sent (or not at all)
  • Fully duplex
  • Stream orientated
  • Reliable startup (via three way handshake)
  • Graceful shutdown (as for startup)