05/01/09 MCSE201 : Communication Network Layered Architecture Anjan.K II Sem M.Tech  Dept of CSE M.S.R.I.T
05/01/09 MCSE201 : Communication Network Outline Layered Architecture Need For Layering OSI Reference Model TCP/IP Model Problems Socket Programming TCP UDP Sockets Demo Applications FTP IP Utilities 05/01/09 MCSE201 : Communication Network
05/01/09 MCSE201 : Communication Network Need For Layering Allows Complex problems are decomposed in to small manageable units. Implementation details of the layer are abstracted. Separation of implementation and specification  Layers are work as one by sharing the services  provided by each other. Layering allows reuse functionality i.e., lower layers implement common once. Provide framework to implement multiple specific protocols per layer
05/01/09 MCSE201 : Communication Network 05/01/09 MCSE201 : Communication Network The ISO/OSI Reference Model Need For Standard Architecture is various vendors with various architectures. Hence  ISO: International Standards Organization  (Estd in 1947) ‏ OSI: Open Systems Interconnection (1970’s) ‏ Copyright © Computer Networks by Larry Peterson Physical   Transmit raw bits over the medium.  Data Link Abstraction of an error free medium (frame) ‏ Flow Control Network   Routing (Packets) ‏ Addressing (IP address) ‏ Transport  Error free end to end, type of service  Port Addresses Session   establishing Sessions, dialog Control &  token management Presentation   - Handles Syntax and semantics Application-  Protocols commonly needed by applications (http,ftp ,etc.,).
05/01/09 MCSE201 : Communication Network TCP/IP Reference Model Also called the Internet Architecture  No Strict enforcement of layering Usually shown as a 4 or 5 layer model Copyright © Communication Networks by Leon Garcia
Suppose that the TCP entity receives a 1.5 megabyte file from the application layer and that the IP layer is willing to carry blocks of maximum size 1500 bytes. Calculate the amount of overhead incurred from segmenting the file into packet-sized units.  Solution:  MTU=1500  MSS= 1460 1.5 Mbyte / 1460 byte = 1027.4, therefore 1028 blocks are needed to transfer the file.  Overhead = ((1028 x 1500 - 1.5M)/1.5M) x 100 = 2.8% Problem 05/01/09 MCSE201 : Communication Network Copyright © Communication Networks by Leon Garcia 1.5MB File Application 1.5MB File MTU 1 MSS+ Header MTU 2 MTU 1028 ……… ..
05/01/09 MCSE201 : Communication Network Application Programming Interfaces(API)- Sockets API are required to implement an Network application Socket interface, part of Berkeley Unix, is now supported by all OS. Socket  - point where a local abstraction process attaches to the network. Interface defines operations  Creating a socket Attaching the socket to the network,  Sending/Receiving messages and closing the socket. 05/01/09 MCSE201 : Communication Network
05/01/09 MCSE201 : Communication Network Socket System Calls Create a socket int socket(int family, int type, int protocol); Bind  –binds socket to local address int bind(int socket,struct sockaddr *address, int addr.len); Listen  defines how many connections can be pending int listen(int socket,int backlog); Accept  carries out the passive operation int accept( int socket,struct sockaddr *address,int addr.len) ‏ int connect(int socket,struct sockaddr *address, int addr.len); int send(int socket, char *message, int msg.len, int flags); int recv(int socket, char *buffer, int buf.len, int flags); 05/01/09 MCSE201 : Communication Network
05/01/09 MCSE201 : Communication Network Socket Calls 05/01/09 MCSE201 : Communication Network Copyright © Communication Networks by Leon Garcia TCP Socket Calls UDP Socket Calls
 
05/01/09 MCSE201 : Communication Network Application Protocol Examples Application Protocol Underlying Transport Protocol Electronic Mail SMTP  [RFC 2821] TCP Web HTTP  [RFC 1945] TCP File Transfer FTP  [RFC 959] TCP Streaming Multimedia RTP  [RFC 1889] TCP/UDP Internet Telephony SIP  [RFC 3261]   UDP Remote terminal access Telnet [RFC 854] TCP Domain Name server DNS [RFC 883] UDP
05/01/09 MCSE201 : Communication Network File Transfer Protocol (FTP)  [RFC 959]   ‏ FTP client contacts FTP server at port 21, specifying TCP as transport protocol Client obtains authorization over control connection Client browses remote directory by sending commands over control connection. When server receives a command for a file transfer, the server opens a TCP data connection to client After transferring one file, server closes connection. FTP client FTP server TCP control connection port 21 TCP data connection port 20
05/01/09 MCSE201 : Communication Network IP Utilities 05/01/09 MCSE201 : Communication Network PING Determines whether a host is online and available and make use of ICMP messages Inform the sending host about errors in IP datagram Used to measure round-trip delay between hosts NETSTAT Queries about its TCP/IP network status Finds status of network drivers and their interface cards TRACEROUTE – debugging tool Used to track route of packet from local host to remote host Informs about latency and reachability Makes use of both ICMP and UDP IPCONFIG Utility to display TCP/IP information about a host available in Windows Simplest form returns IP address, subnet mask, default gateway, DNS servers Available with various options
05/01/09 MCSE201 : Communication Network Summary Layered Architecture OSI Reference Model TCP/IP Model Socket Programming  with Demo TCP UDP Applications FTP IP Utilities 05/01/09 MCSE201 : Communication Network
05/01/09 MCSE201 : Communication Network References [1]  Larry L Peterson, “Communication  Networks”,3 rd  Edition [2]  S.keshav, “An Engineering Approach to  Computer Networking”,Pearson  Education [3]  Andrew.S Tannenbaum, “Computer  Network”, 4th Edition [4]  Leon Garcia et.al., “Communication  Networks”, 2 nd  Edition [5]  RFC’s From  http://www.ietf.org [6]  Leslie Miller, “ISO Reference Model of OSI” ACM transaction in Nov 1981 05/01/09 MCSE201 : Communication Network

Layered Architecture

  • 1.
    05/01/09 MCSE201 :Communication Network Layered Architecture Anjan.K II Sem M.Tech Dept of CSE M.S.R.I.T
  • 2.
    05/01/09 MCSE201 :Communication Network Outline Layered Architecture Need For Layering OSI Reference Model TCP/IP Model Problems Socket Programming TCP UDP Sockets Demo Applications FTP IP Utilities 05/01/09 MCSE201 : Communication Network
  • 3.
    05/01/09 MCSE201 :Communication Network Need For Layering Allows Complex problems are decomposed in to small manageable units. Implementation details of the layer are abstracted. Separation of implementation and specification Layers are work as one by sharing the services provided by each other. Layering allows reuse functionality i.e., lower layers implement common once. Provide framework to implement multiple specific protocols per layer
  • 4.
    05/01/09 MCSE201 :Communication Network 05/01/09 MCSE201 : Communication Network The ISO/OSI Reference Model Need For Standard Architecture is various vendors with various architectures. Hence ISO: International Standards Organization (Estd in 1947) ‏ OSI: Open Systems Interconnection (1970’s) ‏ Copyright © Computer Networks by Larry Peterson Physical Transmit raw bits over the medium. Data Link Abstraction of an error free medium (frame) ‏ Flow Control Network Routing (Packets) ‏ Addressing (IP address) ‏ Transport Error free end to end, type of service Port Addresses Session establishing Sessions, dialog Control & token management Presentation - Handles Syntax and semantics Application- Protocols commonly needed by applications (http,ftp ,etc.,).
  • 5.
    05/01/09 MCSE201 :Communication Network TCP/IP Reference Model Also called the Internet Architecture No Strict enforcement of layering Usually shown as a 4 or 5 layer model Copyright © Communication Networks by Leon Garcia
  • 6.
    Suppose that theTCP entity receives a 1.5 megabyte file from the application layer and that the IP layer is willing to carry blocks of maximum size 1500 bytes. Calculate the amount of overhead incurred from segmenting the file into packet-sized units. Solution: MTU=1500 MSS= 1460 1.5 Mbyte / 1460 byte = 1027.4, therefore 1028 blocks are needed to transfer the file. Overhead = ((1028 x 1500 - 1.5M)/1.5M) x 100 = 2.8% Problem 05/01/09 MCSE201 : Communication Network Copyright © Communication Networks by Leon Garcia 1.5MB File Application 1.5MB File MTU 1 MSS+ Header MTU 2 MTU 1028 ……… ..
  • 7.
    05/01/09 MCSE201 :Communication Network Application Programming Interfaces(API)- Sockets API are required to implement an Network application Socket interface, part of Berkeley Unix, is now supported by all OS. Socket - point where a local abstraction process attaches to the network. Interface defines operations Creating a socket Attaching the socket to the network, Sending/Receiving messages and closing the socket. 05/01/09 MCSE201 : Communication Network
  • 8.
    05/01/09 MCSE201 :Communication Network Socket System Calls Create a socket int socket(int family, int type, int protocol); Bind –binds socket to local address int bind(int socket,struct sockaddr *address, int addr.len); Listen defines how many connections can be pending int listen(int socket,int backlog); Accept carries out the passive operation int accept( int socket,struct sockaddr *address,int addr.len) ‏ int connect(int socket,struct sockaddr *address, int addr.len); int send(int socket, char *message, int msg.len, int flags); int recv(int socket, char *buffer, int buf.len, int flags); 05/01/09 MCSE201 : Communication Network
  • 9.
    05/01/09 MCSE201 :Communication Network Socket Calls 05/01/09 MCSE201 : Communication Network Copyright © Communication Networks by Leon Garcia TCP Socket Calls UDP Socket Calls
  • 10.
  • 11.
    05/01/09 MCSE201 :Communication Network Application Protocol Examples Application Protocol Underlying Transport Protocol Electronic Mail SMTP [RFC 2821] TCP Web HTTP [RFC 1945] TCP File Transfer FTP [RFC 959] TCP Streaming Multimedia RTP [RFC 1889] TCP/UDP Internet Telephony SIP [RFC 3261] UDP Remote terminal access Telnet [RFC 854] TCP Domain Name server DNS [RFC 883] UDP
  • 12.
    05/01/09 MCSE201 :Communication Network File Transfer Protocol (FTP) [RFC 959] ‏ FTP client contacts FTP server at port 21, specifying TCP as transport protocol Client obtains authorization over control connection Client browses remote directory by sending commands over control connection. When server receives a command for a file transfer, the server opens a TCP data connection to client After transferring one file, server closes connection. FTP client FTP server TCP control connection port 21 TCP data connection port 20
  • 13.
    05/01/09 MCSE201 :Communication Network IP Utilities 05/01/09 MCSE201 : Communication Network PING Determines whether a host is online and available and make use of ICMP messages Inform the sending host about errors in IP datagram Used to measure round-trip delay between hosts NETSTAT Queries about its TCP/IP network status Finds status of network drivers and their interface cards TRACEROUTE – debugging tool Used to track route of packet from local host to remote host Informs about latency and reachability Makes use of both ICMP and UDP IPCONFIG Utility to display TCP/IP information about a host available in Windows Simplest form returns IP address, subnet mask, default gateway, DNS servers Available with various options
  • 14.
    05/01/09 MCSE201 :Communication Network Summary Layered Architecture OSI Reference Model TCP/IP Model Socket Programming with Demo TCP UDP Applications FTP IP Utilities 05/01/09 MCSE201 : Communication Network
  • 15.
    05/01/09 MCSE201 :Communication Network References [1] Larry L Peterson, “Communication Networks”,3 rd Edition [2] S.keshav, “An Engineering Approach to Computer Networking”,Pearson Education [3] Andrew.S Tannenbaum, “Computer Network”, 4th Edition [4] Leon Garcia et.al., “Communication Networks”, 2 nd Edition [5] RFC’s From http://www.ietf.org [6] Leslie Miller, “ISO Reference Model of OSI” ACM transaction in Nov 1981 05/01/09 MCSE201 : Communication Network

Editor's Notes

  • #2 <number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number><number>111111121212121212121212121212