Jamsa Chapter 3 - An Introduction to TCP/IP

TCP: Transport Control Protocol. IP: Internet Protocol. But TCP/IP is more than two protocols. It's a suite including TCP, IP and other protocols. Other common tools include UDP and ICMP. Another name is "Internet protocol suite."

 IP is a network-layer protocol that moves data between host computers.

 TCP is a transport-layer protocol that moves data between applications.

 

UDP, the User Datagram Protocol, is another transport-layer protocol, more simply (and thus faster) but less reliably than TCP. UDP is the transport layer protocol used in the SIMNET simulator system for instance.

 ICMP, the Internet Control Message Protocol, carries network error messages and other control info.

 You can bypass the Transport Layer (see thin arrows above) but it's difficult programming; not recommended.

 The Link Layer. ARP=Address Resolution Protocol; RARP=Reverse ARP. ARP translates network layer addresses into link layer addresses, and vice versa. Link "hides" the network technology (Ethernet, Token Ring, Carrier Pigeon) from the Network Layer. More in Chapter 4.

 Definition: MultiHomed - a computer with two or more network interface cards. It may or not be serving as a router.

 Crash Course on Ethernet.

Ethernet was invented at Xerox Palo Alto Research Center (PARC) which also gave us the workstation, the iconic interface, Smalltalk and the concept of the laptop computer (called "Dynabook.")

Every ethernet card has a unique address. Data travels in frames. As we saw before, an Ethernet frame has these parts:

 

64 bits - preamble
48 bits - destination address
48 bits - source address
16 bits - frame type
368 - 12,000 bits - frame data
32 bits - CRC value

All cards listen for their own address, and also for FF FF FF FF FF FF which is a broadcast message. Each card can listen while it transmits; if it hears a collision it waits a short random interval and tries again. This is called CSMA/CD: Carrier sense multiple access with collision detection.

 TCP/IP Facts and Vocabulary.

 1. IP and UDP are connectionless (like snail-mail, rather than like a phone call.)

 2. TCP is a reliable protocol, using checksums, acknowledgment messages etc. UDP and IP are unreliable (no acknowledgements at that layer.) IP uses checksums but in UDP they are optional.

 3. TCP is a byte stream protocol. You can think of it as a hose for bytes, which preserves their order. User doesn't worry about size of frames or other internal structures. The opposite of a byte stream protocol is a datagram protocol, which sends bundles ("datagrams") that may arrive in any order.

 4. TCP provides a virtual circuit, i. e. a point to point connection. IP and UDP do not.

 Go onward to Chapter 4

 Go back to the Table of Contents for these Lecture Notes