COMPUTER NETWORKS NETWORK ARCHITECTURE AND PROTOCOLS
The Need for Standards Computers have different architectures, store data in different formats and communicate at different rates Agreeing on a particular standard is difficult Defacto Standards Standards that exist by virtue of wide spread use Products consistent with these standards often have a large market Standards adopted by Agencies Step 1 Submit proposal to be considered by an agency Step 2 If proposal has merit and wide spread acceptance, agency make suggestions for modifications to originators Step 3 After rounds of suggestions and modifications the proposal is adopted or refused
Network Architectures The task of designing a communication network is too complex to be handled as a monolithic unit. An alternative, a structured approach. Divide communication task into manageable parts. Need to describe the communication functions in terms of an architecture. A network architecture defines the relationship and interactions between network services and functions through common interfaces and protocols.
What is a Protocol? A protocol is a set of mutually agreed upon rules that regiment interactions between communicating entities. The key elements of a protocol are: Syntax defines tstructure of information communicated Semantics defines the meaning of the exchanged information, including control and signaling information Timing defines the time at which data should be exchanged. Key elements define WHAT is comunicated, HOW it is communicated, and WHEN it is communicated.
NETWORK ARCHITECTURE LAYERING
OSI Reference Model Layered Architecture of Computer Networks International Organization for Standardization (ISO) developed Open Systems Interconnection (OSI) Reference Model that characterizes and standardizes the internal functions of a communication system Model provides a framework for the development protocols for computer communication Defines the rules and conventions for various functions within each layer Specifies the general relations among these functions. Determines the constraints on the types of functions and their relations.
Layered Architecture Model describes the architecture in terms of abstract layers Boundaries between adjacent layers are called interfaces Each layer performs a related subset of functions required for communication, and adds value to the services provided by lower layers. Layer N relies on services of layer N-1 to provide a service to layer N+1 Service required from lower layer is independent of how that service is implemented Information and complexity hiding
Why Layering? Monolithic non-layered architectures are costly, inflexible, and soon obsolete Layering simplifies the design, implementation and testing Layering provides flexibility for modifying and evolving protocols and services without having to change layers below Protocol in each layer can be designed separately from those in other layers
ISO/OSI Reference Model The ISO reference model defines seven layers: Application Layer, Presentation Layer, Session Layer, Transport Layer, Network Layer, Data Link Layer, and Physical Layer.
ISO/OSI Reference Model Exist only in Hosts Host Application Presentation Session Host Application Presentation Session Transport Router Router Transport Network Network Network Network Exist in Hosts and Routers Data Link Physical Data Link Physical Data Link Physical Data Link Physical Communication Medium
Layers, Services & Protocols Each layer operates according to a protocol to provide a service to the layer above Logically, each layer communicates directly with its peer A peer is the communication entity residing at the same layer in the other communication system Physically, each layer communicates with the layers directly above it and below it
ISO/OSI Reference Model Host Host Application Application Presentation Presentation Session Session Transport Router Router Transport Network Network Network Network Data Link Data Link Data Link Data Link Physical Physical Physical Physical Communication Medium
ISO/OSI Refrence Model Data H Data H Data H Data H Data H Data T Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer
NETWORK ARCHITECTURE ISO/OSI LAYERS
ISO/OSI Physical Layer Transmission of raw bits, 0/1, over a communication medium
Physical Layer Characteristics and Functions Transmission Medium Twisted-pairs, Coaxial cable, Optical fiber, Radio, Satellite, Infrared, Aspects of a communications link Mechanical Cable, Wires, Connectors, Pins,... Electrical and Optical Interfacing, Modulation, Data Encoding, Signal Strength, Voltage levels, Clock Recovery, Functional and Procedural Activation, Maintenance and Deactivation of physical links
Data Link Layer Functions Transfers frames across direct connections between two adjacent nodes. Transform an unreliable physical link into a reliable logical link Error free communication over a single link between adjacent nodes Speed matching between senders and receivers Framing
Data Link Layer The DLL is composed of two Sub-Layers Logical Link Control (LLC) Medium Access Control (MAC) Network LLC MAC Physical Data Link Layer Architecture
Medium Access Control (MAC) Contention occurs, when two or more nodes attempt to access a shared medium at the same time Rules must be in place to regiment access The MAC sublayer defines the rules for accessing the medium Common MAC Schemes include;: Random Access Carrier Sense Multiple Access (CSMA) CSMA, with Collision Detection (CSMA/CD) CSMA, with Collision Avoidance (CSMA/CA) Token Passing Reservation
LLC Sublayer Main Functions Framing Groups bits into frames, using a header and a trailer Flow Control Prevent sender from overwhelming the receiver s buffers Error Control Detecting and recovering from bit errors 1011000 Single Error Detected Retransmission 1011000 Double Error Undetected Retransmission LLC LLC LLC LLC 10110001 10110101 10110001 10100101 Even Parity Even Parity
Network Layer Network Layer: Data transmission and delivery between hosts Controls access to the network Provides routing of packets within the network Manages contention and bottlenecks within the network Data Link Layer: Error free communication over a single link between adjacent nodes Speed matching between senders and receivers Framing
Network Layer Main Functions The network layer provides the functional and procedural means of transferring packet data units from a source to a destination functions Basic Network Layer functions include: Addressing Network devices must be assigned network addresses for identification Routing: Network nodes jointly execute a routing algorithm to determine shortest paths between traffic sources and destinations Packet Forwarding Transfer packets across a routing path Congestion Control To mitigate the impact of traffic surges
Transport Layer Transport layer supports required functions to enable communications between end systems. Main functions often performed include: Naming: used to differentiate between different communicating processes Multiplexing and Demultiplexing: TL multiplexes data, received from many local application programs, into as a single data stream before sending it TL demultiplexes an incoming stream of data, and directs each data packet to the appropriate recipient application process. Connection Management for Call Setup and Teardown Segmentation and Reassembly To meet the length requirement of the physical network Reliability and Flow Control To deal with packet error and packet loss, delivery out-of-order, and packet duplication
Session Layer The main function of a session layer is to establish and maintains a session between two end-users Dialog management can be full duplex or half Duplex The session layer establishes the connection in conjunction with the application A video session may have multiple transport connections for Video audio, and textual Data In case of connection disruption during large file transfers, SL enables the communication resume form synchronization points
Presentation Layer Different computers have different ways of representing the same information The presentation layer establishes a common ground of communication Data compression Decreasing as much as possible the amount of bits used to represent information Security If an un-authorized person intercepts the message, it is unintelligible
Application Layer Application Layer: Provides services that are frequently required by applications: Typical application layers E-mail File Transfer Protocol (FTP) Hypertext Transfer Protocol (HTTP) Telnet
NETWORK ARCHITECTURE PEER-TO-PEER COMMUNICATION
Peer-to-Peer Communication Protocols Layer-N in one system interacts with Layer-N in another system to provide service to Layer-( N+1) The entities comprising the corresponding layers on different machines are called peer processes. The communicating entities use a set of rules and conventions called the layer-n Protocol. Layer-N peer processes communicate by exchanging Protocol Data Units (PDUs)
Layer N Peer-To-Peer Protocol Layer N Interface Protocol SAP Service Access Point SAP Interface Protocol Layer N-1 End System Peer-To-Peer Protocol Layer N-1 End System
Peer-to-Peer Communication Communication between peer processes is virtual and actually indirect Layer-N+1transfers information by invoking the services provided by Layer-N Services are available at Service Access Points (SAP) Each layer passes data and control information to the layer below it until the physical layer is reached and transfer occurs The data passed to the layer below is called a Service Data Unit (SDU) SDU s are encapsulated in PDU s 30
Protocol Data Unit A layer accepts a Service Data Unit and adds Protocol Control Information to form a Protocol Data Unit. Layer N+1 Layer N+1 NPCI SAP NPCI SAP NPCI NSDU NPDU Layer N Peer-to-peer communication NPCI NSDU NPDU Layer N
Interface Data Unit A set of Interface Data and its associated ICI makes an IDU, the data unit passed across abstract interfaces at the Service Access Point. IDU SAP ICI Int. Data ICI Int. Data ICI Int. Data PCI SDU PCI SDU PDU
Headers & Trailers Data Application AH Data Application Presentation PH AH Data Presentation Session SH PH AH Data Session Transport TH SH PH AH Data Transport Network NH TH SH PH AH Data Network Data Link DH NH TH SH PH AH Data CRC Data Link Physical 00101 10101010 Physical 33
ISO/OSI Service Primitives Interactions between adjacent layers are managed by communication primitives. A primitive initiates an action or reports a result. These primitives can occur at various instances of the dialogue.
ISO/OSI Service Primitives Four basic primitives are defined: Service.Request(): Invokes the services of the lower layer and passes the needed parameters. Service.Indication(): Advises the higher layer of the requested service. Service.Response(): Used to reply to an indication issued by the lower layer. Service.Confirmation(): Used to acknowledge the completion of a request previously invoked by a higher layer.
ISO/OSI Service Types Three types of service: Confirmed Service Involves all four primitives Unconfirmed Service Involves only Service.Request() and Service.Indication() primitives. Acknowledgment (Service.Response() and Service.Confirm()) are omitted. Provider Initiated Service Used by the network to signal special conditions, involves only Service.Indication() primitive.
ISO/OSI Confirmed Service SAP SAP Request Indication Confirm Response End System End System Time
ISO/OSI Unconfirmed Service SAP SAP Request Indication End System End System Time
ISO/OSI Provider Initiated Service SAP Provider SAP Indication Indication End System End System Time
Segmentation & Reassembly A layer may impose a limit on the size of a data segment that it can transfer for Thus, a Layer-N SDU may be too large to be handled as a single unit by Layer-N-1 The SDU is segmented into multiple PDUs Segmentation n-sdu n-pdu n-pdu n-pdu Reassembly n-sdu n-pdu n-pdu n-pdu
Multiplexing Layer N+1 Entity Layer N+1 Entity Layer N+1 Entity Layer N+1 Entity N-sap N-sap N-PDU N-SAP N-sap N-SDU H Layer N Entity Layer N Entity H N-SDU N-PDU Sharing of Layer-N service by multiple Layer-N+1 users Multiplexing ID is required in each PDU to determine
NETWORK ARCHITECTURE INTERNET ARCHITECTURE
Internet Design Philosophy The approach resulted from extensive research and practical experience of ARPANET, currently the Internet The fundamental principle of the architecture Communication between local and remote processes can be accomplished by first identifying the remote host and then identifying the remote process within the remote host.
Internet Design The actions of identifying the network and the remote process can be handled independently. The task of the network is reduced mainly to routing data between hosts. The network need not be concerned with how the data is directed to the remote process within the host.
Internet Layers Based on the above concept, the architecture was conceived as a hierarchical ordering of protocols that can be organized into four layers: Application layer, Transport layer, the Internet layer, and Network access layer. Higher layers may bypass an adjacent layer and directly use the services of a lower layer.
Internet Protocol Architecture Process Telnet FTP HTTP SNMP ToD Host-to-Host (Transport) Transmission Control Protocol (TCP) User Datagram Protocol (UDP) Internet (Network) Internet Protocol (IP) Internet Control Message Protocol (ICMP) Network Interface Subnetwork A Subnetwork B
ISO/OSI Internet Correspondence ISO/OSI Internet Application Presentation Process Session Transport Network Data Link Physical Host-to-Host Internet Network Access
Internet Addressing Concept Host A Host B Port TCP Logical Transport Connection TCP IP Network Access Protocol Physical Network IP Address Physical Address Router IP Network Access Protocol Physical IP Net 1 Net 2 NAP 1 NAP 2
Internet Architecture The IP network layer provides a simple, best effort, datagram service May not be reliable TCP supports reliable data delivery Performance enhancement for a variety of applications: Telnet, FTP, HTTP, etc Decision does not impact other applications, if UDP can be used Everything else is implemented at application level
Internet Architecture Application R O B U S T FRAGILE Internet Protocol Network Physical
Summary Introduced the concept of a protocol Introduced the main network architectures Discussed future trends of communication networks Revisited switching techniques