|Computer Solutions Ltd|
Celebrating 38 years
|Home Products Supported Chips Information Zone Contact Site Map Web Shop|
TCP/IP What and Why
Many embedded engineers are now beginning to look at using the TCP/IP protocols in a wide range of 8 through 32 bit projects. We have produced a 28 page white paper designed to introduce those not familiar with the field to its nomenclature and the choices to be made when designing a TCP/IP embedded system. Below are some extracts from section of that white paper along with information on its contents. For a free copy follow this link
Introduction to TCP/IP
It makes a lot of sense to use one of the TCP/IP family of protocols next time you need to communicate with a micro or between micros. For one thing it saves you re-inventing the wheel. Then, once you are using TCP/IP, you can easily take advantage of a whole group of higher-level protocols that build on its foundations such as PPP, FTP, HTTP and Mail.
Until recently the size of TCP/IP stacks restricted it to use with microprocessors having 100Kb or more of memory but now MicroNet provides the major features of TCP/IP in a small portable package suitable for 8 bit micros. Taking less than 10Kb it can easily co-exist with application code to provide supervisory links to other systems or to act as a sophisticated user interface.
IP / UDP / TCP
When two computers wish to exchange information over a network they need to use a protocol which defines the "rules of the road" that each computer must follow so that the systems on the network can exchange data.
The most popular protocols in use today are undoubtedly Internet Protocol (IP) and Transmission Control Protocol (TCP), which is based on IP. The term TCP/IP is often loosely used to refer to the whole suite of protocols and applications that are based on these Internet Protocols.
The simplest way a CPU can send data over the network is in discrete units called datagrams or packets. A datagram consists of a header followed by application defined data. The header contains the addressing information that is used to deliver the datagram to its destination. User Datagram Protocol (UDP) does this either to an individual destination or as a broadcast picked up by many. Like shouting down a corridor there is no guarantee that a datagram will actually arrive at its destination or be clearly heard.
The Transmission Control Protocol (TCP) was developed to fill the need for a reliable, straightforward way to exchange data without having to worry about lost packets or jumbled data. The application programmer doesn’t need to write code to handle dropped datagrams, and instead can focus on the application itself. Because the data is presented as a stream of bytes, existing code can easily be modified to use TCP.
It is possible to directly drive the TCP/IP protocol but most applications programmers work with the Socket API. Each socket is an end-point that can be likened to a telephone. You need to establish a connection with the other program by selecting the socket address (phone number) of the application that you want to connect to. Once a connection has been established with a socket in the addressee the applications programmer need only be concerned with reading and writing the data.
An Introduction to TCP/IP for 8 & 16 bit Embedded Engineers
For a free copy follow this link