Post on 27-Jan-2016
description
Chapter 2. Chapter 2. Network ModelsNetwork Models
1
LAYERED TASKSLAYERED TASKSWe use the concept of layers in
our daily life. As an example, let us consider two friends who communicate through postal mail. The process of sending a letter to a friend would be complex if there were no services available from the post office.
2.2
2.3
Layered Tasks, ExampleLayered Tasks, Example
THE OSI MODELTHE OSI MODELEstablished in 1947, the International
Standards Organization (ISO) is a multinational body dedicated to worldwide agreement on international standards. An ISO standard that covers all aspects of network communications is the Open Systems Interconnection (OSI) model. It was first introduced in the late 1970s.
Note: ◦ ISO is the organization.◦OSI is the model.
2.4
Seven layers of the OSI Seven layers of the OSI modelmodel
2.5
Interfaces b/w LayersInterfaces b/w Layers
2.6
2.7
Exchange using the OSI Exchange using the OSI ModelModel
LAYERS IN THE OSI MODELLAYERS IN THE OSI MODELPhysical LayerData Link LayerNetwork LayerTransport LayerSession LayerPresentation LayerApplication Layer
2.8
Physical LayerPhysical LayerThe physical layer is responsible for
movements of individual bits from one hop (node) to the next.◦ Physical characteristics of interface and
medium: pin assignment, connector, cables◦ Representation of bits: encoding ◦ Data rate◦ Synchronization of bits◦ Line configuration: point-to-point, multipoint◦ Physical topology◦ Transmission mode: simplex, half-duplex, full-
duplex
2.9
Data Link LayerData Link LayerThe data link layer is responsible
for moving frames from one hop (node) to the next.◦Framing◦Physical addressing◦Flow control◦Error control◦Access control
2.10
Hop-to-hop DeliveryHop-to-hop Delivery
2.11
Network LayerNetwork LayerThe network layer is responsible
for the delivery of individual packets from the source host to the destination host.◦Logical addressing◦Routing
2.12
Source-to-destination Source-to-destination deliverydelivery
2.13
Transport layerTransport layerThe transport layer is responsible
for the delivery of a message from one process to another.◦Service-point addressing◦Segmentation and reassembly◦Connection control◦Flow control◦Error control
2.14
Segmentation and Segmentation and ReassemblyReassembly
2.15
Reliable process-to-process Reliable process-to-process delivery of a messagedelivery of a message
2.16
Session layerSession layerThe session layer is responsible
for dialog control and synchronization.
2.17
Presentation layerPresentation layerThe presentation layer is
responsible for translation, compression, and encryption.
2.18
Application layerApplication layerThe application layer is
responsible for providing services to the user.
2.19
Summary of layersSummary of layers
2.20
TCP/IP PROTOCOL SUITETCP/IP PROTOCOL SUITEThe layers in the TCP/IP protocol suite
do not exactly match those in the OSI model. The original TCP/IP protocol suite was defined as having four layers: host-to-network, internet, transport, and application. However, when TCP/IP is compared to OSI, we can say that the TCP/IP protocol suite is made of five layers: physical, data link, network, transport, and application.
2.21
TCP/IP and OSI modelTCP/IP and OSI model
2.22
ADDRESSINGADDRESSINGFour levels of addresses are used
in an internet employing the TCP/IP protocols: ◦Physical address
Ex. Ehternet address, machine address
◦Logical address IP address
◦Port number◦Specific
URL, Email address, domain name
2.23
Network layer in TCP/IPNetwork layer in TCP/IPAddress resolutionReverse address resolutionInternet control messageInternet group message
2.24
Transport layer in TCP/IPTransport layer in TCP/IPUser Datagram Protocol (UDP)
◦Connectionless, unreliableTransmission Control Protocol
(TCP)◦Connection-oriented, reliable
Stream Control Transmission Protocol (SCTP)◦For supporting multimedia and VOIP
2.25
Relationship of layers and Relationship of layers and addresses in TCP/IPaddresses in TCP/IP
2.26
Example 2.1Example 2.1In Figure 2.19 a node with
physical address 10 sends a frame to a node with physical address 87. The two nodes are connected by a link (bus topology LAN). As the figure shows, the computer with physical address 10 is the sender, and the computer with physical address 87 is the receiver.
2.27
Physical addressesPhysical addressesThe physical addresses will
change from hop to hop,but the logical addresses usually
remain the same.
2.28
TCP/IP in a NetworkTCP/IP in a Network
ECE/IUPUIIntro to Computer Communication Networks 2-29
IP (1,2)
NI3487
data
data1,2
data3487
IP(1,3)
NI6537
data
1,3
6537
data1,2
1,3
Example 2.2Example 2.2As we will see in Chapter 13,
most local-area networks use a 48-bit (6-byte) physical address written as 12 hexadecimal digits; every byte (2 hexadecimal digits) is separated by a colon, as shown below:◦07:01:02:01:2C:4B
2.30
Example 2.3Example 2.3Figure 2.20 shows a part of an internet
with two routers connecting three LANs. Each device (computer or router) has a pair of addresses (logical and physical) for each connection. In this case, each computer is connected to only one link and therefore has only one pair of addresses. Each router, however, is connected to three networks (only two are shown in the figure). So each router has three pairs of addresses, one for each connection.
2.31
IP addressesIP addresses
2.32
TCP/IP thru a RouterTCP/IP thru a Router
ECE/IUPUIIntro to Computer Communication Networks 2-33
IP (1,2)
NI3487
data
data1,2
data3487
IP(2,5)
NI3903
data
NI6543
NI1002
IP(1,1) (2,3)
2,5 data1,2
2,5
data1,2
2,5
6543data
1002
3903
Host A Router Host B
Example 2.4Example 2.4Figure 2.21 shows two computers
communicating via the Internet. The sending computer is running three processes at this time with port addresses a, b, and c. The receiving computer is running two processes at this time with port addresses j and k. Process a in the sending computer needs to communicate with process j in the receiving computer. Note that although physical addresses change from hop to hop, logical and port addresses remain the same from the source to destination.
2.34
Port addressesPort addresses
2.35
Example 2.5Example 2.5As we will see in Chapter 23, a
port address is a 16-bit address represented by one decimal number.
2.36
Server in TCP/IPServer in TCP/IP A process waiting a packet on a specific port number Duplicate a connection after establishing Connection?
◦ 5 tuple – (PT, SA, SP, DA, DP) protocol type, source address, source port, destin address, destin port.
◦ A server waits on (pt, sa, sp, any-DA, any-DP)
◦ Upon a request from the client, any-DA and any-DP are filled with specific value.
Server Port Number – 0 to 1023 are reserved to well-known services.
ECE/IUPUIIntro to Computer Communication Networks 2-37
Protocol Reserved Port #
Comments
FTP 21 File Transfer
telnet 23 remote login
SMTP 25 E-mail
DNS 53 Domain name system
HTTP 80 World Wide Web
Berkeley SocketBerkeley SocketAPI – interface available to programmer
◦ socket(), bind(), listen(), accept(), connect(), sendto(), recvfrom(), htonl(), htons(), ntohl(), ntohs()
◦ Utility function - gethostbyname(), gethostbyaddr()Support multiple communication protocols
◦ Internet Domain◦ Unix Domain◦ Xerox NS Domain (XNS)◦ ATM Domain (Recent progress in several
implementation)References
◦ Richard Stevens, “TCP/IP Programming”, or◦ http://en.wikipedia.org/wiki/Internet_socket
ECE/IUPUIIntro to Computer Communication Networks 2-38
Example of ProtocolExample of Protocol Interaction between two peer entities Server/Client
◦ Server – a process waiting a request Listening a specific port in TCP/IP Httpd (Apache™) , telnetd, ftpd, …
◦ Client – a process making a request A request to server address and the port number Netscape™, telnet, gftp, ws_ftp, …
A connection in a server/client model is a 5-tuple◦ Protocol type, ◦ Source address, ◦ Destination address◦ Source port number, ◦ destination port number
ECE/IUPUIIntro to Computer Communication Networks 2-39
Example of Protocol, http Example of Protocol, http (1)(1)
ECE/IUPUIIntro to Computer Communication Networks 2-40
Server Client
Listening on port 80 Request to 134.68.80.4:80
Connection established
Send a requestGET/index.html HTTP 1.0
Send a result codeHTTP/1.1 200
Read and send the file<html> <head> …
Disconnect the connection
Interpret and display the html
Connection established
time
TCP and Socket in TCP and Socket in Client/ServerClient/Server
8-41
connect (blocks)
Host A (Client)Host B (Server)socke
tbind
listen
socket
connect returns
accept (returns)
write
read returns
accept (blocks)
write
read (blocks)
read returns
read (blocks)