CS 408 Computer Networks: Chapter 2: Protocols and The TCP/IP Protocol Suite
CS 408 Computer Networks: Chapter 2: Protocols and The TCP/IP Protocol Suite
Protocols
Cooperative action is necessary
computer networking is not only to exchange bytes huge system with several utilities and functions. For examples
error detection Encryption Routing etc.
For proper communication, entities in different systems must speak the same language
there must be mutually acceptable conventions and rules about the content, timing and underlying mechanisms
Protocol Architecture
Task of data transfer is broken up into some modules
Why? How do these modules interact?
File Transfer Application Layer: Application specific commands, passwords and the actual file(s) high level data
Communications Service Module: reliable transfer of those data error detection, ordered delivery of data packets, etc.
Network Module: actual transfer of data and dealing with the network if the network changes, only this module is affected, not the whole system 5
Each layer provides services to upper layer; expect services from lower one
Layer interfaces should be well-defined
This layer may need specific drivers and interface equipment depending on type of network used. But upper layers do not see these details
independence property
8
Transport Layer
Reliable data exchange
to make sure that all the data packets arrived in the same order in which they are sent out Packets nor received or received in error are retransmitted
Application Layer
Support for different user applications e.g. e-mail, file transfer
10
Addressing Requirements
Two levels of addressing required Each computer needs unique network address Each application on a (multi-tasking) computer needs a unique address within the computer
The service access point or SAP The port number in TCP/IP protocol stack
11
12
13
Transport PDU
Transport layer may fragment user data Each fragment has a transport header added
Destination port Sequence number
since the transport layer may split application data into smaller packets
14
Network PDU
Adds network header
network address for destination computer optional facilities from network (e.g. priority level)
15
Transport Header
Transport Header
Network Header
Network Header
(Network PDU)
16
18
Although no OSI-based protocol survived, the model is still valid (in the textbooks)
20
21
22
23
Elements of Standardization
Protocol specification
Operates between the same layer on two systems
May involve different platforms
Service definition
Functional description of what is provided to the next upper layer
Addressing
Referenced by SAPs
24
25
Data Link
Basic services: error detection and control, flow control at the link level (point to point)
Higher layers may assume error free transmission
Network nodes (relays/routers) should perform switching and routing functions QoS (Quality of Service) and congestion control are also addressed in this layer Several other internetworking issues
e.g. differences in addressing, max. data length, etc.
Higher layers do not need to know about underlying networking technology Not needed on direct links
27
Use of a Relay/Router
28
Session
Control of dialogues
whose turn to talk? Dialogue discipline (full-duplex, half-duplex)
29
Application
Support for various applications
30
Funded by the US Defense Advanced Research Project Agency (DARPA) for its packet switched network (ARPANET)
DoD automatically created an enormous market for TCP/IP
HTTP, SMTP,
TCP, UDP IP
33
34
Internet Layer
Connectionless, point to point internetworking protocol (uses the datagram approach)
takes care of routing across multiple networks each packet travels in the network independently of each other
they may not arrive (if there is a problem in the network) they may arrive out of order
a design decision enforced by DoD to make the system more flexible and responsive to loss of some subnet devices
Transport Layer
End-to-end data transfer Transmission Control Protocol (TCP)
connection oriented reliable delivery of data ordering of delivery
Can you give example applications that use TCP and UDP?
36
Application Layer
Support for user applications A separate module for each different application
e.g. HTTP, SMTP, telnet
37
IP (Internet Protocol)
The core of the TCP/IP protocol suite Two versions co-exist
v4 the widely used IP protocol v6 has been standardized in 1996, but still not widely deployed
38
IPv6
IPv6
Enhancements over IPv4 for modern high speed networks Support for multimedia data streams
TCP
Transmission Control Protocol
end to end protocol Reliable connection = provides flow and error control
TCP PDU
Called TCP segment Includes source and destination port
Identify respective users (applications) pair of ports (together with the IP addresses) uniquely identify a connection; such an identification is necessary in order TCP to track segments between entities.
40
TCP Header
41
UDP
User Datagram Protocol Alternative to TCP
end-to-end protocol
Not guaranteed delivery No preservation of sequence No protection against duplication Minimum overhead
42
PDUs in TCP/IP
43
44
45
Internetworking
Interconnected set of networks
May be seemed as a large network
46
Internetworking Devices
Each subnetwork supports communication among the devices attached to that subnetwork
End systems (ESs)
47
Routers
Interconnect dissimilar subnetworks without any modifications on architecture of subnetworks Must accommodate differences among networks, such as
Addressing schemes
network addresses may need to be translated
We have seen that subnetworks may have different network access and physical layers, but they have to speak the same (inter)network protocol implemented in all end systems and routers
The most important internetwork protocol is the IP protocol
48
WAN
49
Action of Sender
50
Action of Router
51
Action of Receiver
52
Standards
Required to allow for interoperability among equipments Advantages
Ensures a large market for equipment and software Allows products from different vendors to communicate
Disadvantage
Freeze technology (???)
53
54
55
IETF Organization
Grouped in areas
e.g. applications, security, routing, etc. each area has an Area Director, who is also member of IESG
consensus
58
59