Data Networks Second Edition Dimitri Bertsekas / Robert Gallager Chapter 1 Introduction and Layered Network Architecture Section 1.1 Historical Overview 1.1 Historical Overview Historical Overview(60’s) Historical Overview(70’s) Historical Overview(70’s) Inside subnet, nodes & communication links. IMP(Interface message processors) : to route message through subnets. – called also switches. wide area network local area network Historical Overview(80’s) Historical Overview(80’s) 1980‘s, more and more networks connected via gateways and bridges Each subnet has its own conventions and control algorithms (protocols) for handling data – gateways and bridges must deal with this inhomogeneity. Historical Overview In the future, data network, voice networks, cable networks will be integrated more. ISDN(integrated services digital network) Broadband ISDN : greater data rates. Section 1.2 Messages and Switching 1.2.1 Messages and Packets message: Airline reservation system : data, flight no# … Email : document File system : file Image transmission system : image … 1.2.1 Messages and Packets A message is usually a string of binary symbols, 0 or 1 (bit). Sender → message → recipient compression Compression can reduce expected length of representation. Messages and Packets Control overhead : ensure reliable communication route control congestion, etc. Usually broken into shorter bit strings(packets) ※ transmit long messages is harmful , (e.g. delay, buffer management, congestion control) 1.2.2 Sessions In larger transaction : a message sequence is called a session. Requires many messages over a considerable time period. Setup procedure(similar to setting up a call) A connection In other networks, no such setup is required. Each message is treated independently → connectionless Sessions Messages within a session are triggered by events. Message initiation times are arbitrary, unpredictable. Model messages / packets arrival for a given session as a random process. Poisson process On/Off flow model Application are rapidly changing → model complex Sessions Detailed characteristics for applications. 1. 2. 3. 4. Message arrival rate and variability of arrivals. Session holding time. Expected message length and length distribution. Allowable delay : 10ms ~ 1ms Sessions 5. 6. Reliability : error-free 、 occasional loss. Message and packet ordering e.g. file transfer : message arrival rate : 10w delay requirement : relaxed reliability : high 1.2.3 Circuit Switching and Store-and-Forward Switching Circuit switching Inefficient utilization When a session s is initialed, allocated a given transmission rate rs (bits per second) A path is created from transmitting site through the subnet to destination site. Circuit switching Each communication link on this path allocates a portion of rs of its total transmission capacity.(done by TDM or FDM multiplexing) Note : sum of rates for all sessions cannot exceed total capacity of links, otherwise, new session is rejected. Guaranteed transmission rate rs similar to telephone network. But, in a data network, required transmission rates are different and vary over a wide range Circuit Switching Why inefficient? :message arrival rate 1 :expected interarrival rate b/w 1 messages for a given session x :expected tx time of a message L :expected length of messages Circuit Switching So x L / rs Note x to 1 / fraction of time to S is busy x 1 , idle time Circuit Switching Fig.1.5 Circuit Switching If allowable expected delay T x P T ; x: tx time , P: Propagatio n delay λ x λT If λT 1 (i.e. T 1/λ ) Utilizatio n λ x i.e. rs must be large enough to meet allowable delay Circuit Switching Session for which T 1 are referred to “bursty” sessions For interactive terminal sessions, T 0.01 , utilizatio n : 1% Link costs become less important wasted capacity of circuit switching:less important Circuit Switching and Storeand-Forward Switching Store-and-forward Switching Without making reservation/allocation Using full transmission rate of the link on packet/message basis Advantage Fully utilized , whenever has traffic to send Disadvantage Queuing delay,hard to control,overloaded nodes => need to be slowed down Store-and-Forward Switching Message Switching Store-and-forwarding,messages basis Packet Switching Store-and-forwarding,packets basis Store-and-Forward Switching Virtual Circuit routing Store-and-forwarding,but a particular path is set up when a session initiated using a fixed path Capacity is allocated on a demand basis Dynamic routing Store-and-forwarding,packets find its own path according to current information available at nodes visited Section 1.3 Layering Laying Hierarchical modularity Laying(Fig 1.7) Laying OSI(Open System Interconnection) model by ISO(International Standards Organization) Laying(Fig 1.8) 1.3.1 Physical Layer Provide a virtual link for transmitting a sequence of bits between any pair of nodes Map incoming bits from the next higher layer into signals for the channel At Rx end,map signals back to bits Modem(digital data Modulator and demodulator) : broadly referred here Physical Layer compare Synchronous bit pipe Intermittent synchronous bit pipe 1bit per t second DLC module supplies bits at a synchronous rate when has data Asynchronous characters Map into fixed-length bit strings and transmitted asynchronously as they are generated Physical Layer Interface between DLC Module on one end might be temporarily inoperable Some initialization is required For synchronous operation , must provide timing Physical Layer RS-232-C & physical layer of X.21 DCE: Data Communication Equipment DTE: Data Terminal Equipment DTE sends a signal to DCE “request-tosend”.DCE replies with “clear-to-send” The interchange is a very simple example of a protocol or distributed algorithm 1.3.2 Data Link Control (DLC) Layer To convert unreliable bit pipe at layer 1 into higher-layer Sending packets asynchronously but errorfree Variable delay b/w packet into DLC exit from the other end Need to correct errors Overhead control bits Header trailer Data Link Control (DLC) Layer Some request retransmissions when error occur For some LAN,multi-access may take place. The signal received is a function of the signals from a multiplicity of transmitting nodes MAC(Medium Access Control) Sublayer Considered as lower sublayer of layer 2 Allocate multi-access channel , so that each node can successfully transmit its frame without interference from other nodes MAC(Fig 1.10) 1.3.3 Network Layer Implementing routing and flow control for its network Use packet header along with stored information to accomplish these functions Transport layer also provides additional information as a set of parameters in accordance with interface protocol Network Layer(Fig 1.11) Network Layer Along with transmit packets from lower layer and new packets from higher layer,the network layer generates its own control packets For virtual circuit routing Select a route when VC being generated(distributed way or by source node) Ensure each packet of the session follows the assigned route(by placing enough information in the header) Network Layer For datagram network,each packet is routed individually Service offered Using VC Packet in order,connection - oriented Using datagram Packets out of order,connectionless service Network Layer Flow control Congestion control Avoid sending data too fast Avoid congestion within subnet Solution Good route Good buffer management Control flow of packet into network s.t. congestion control Network Layer Connection – oriented service Possible to negotiate => guarantee service at setup Connectionless service No opportunity for negotiate Network Layer High link capacities in the future will make it possible to operate network economically with low utilization and make flow control unnecessary Unfortunately,as link capacity increase,access rate into networks also increase e.g. malfunctioning user could dump enough data into network quickly to cause congestion => still need some regulatry rule Network Layer Routing & flow control Primarily for WAN For LAN , routing is not a major problem,congestion is possible Could be dealt with in MAC sublayer Major functions of network layer are accomplished in MAC sublayer. Thus,connectionless service is common here. Network Layer Note Network layer delivering every packet may be reliable or might be unreliable. The higher layer might have to recover errors Internet Sublayer To connect different subnetworks together Solution: create a new sublayer:internet sublayer top part of network layer A gateway connecting two subnets will interface Internet modules also : routing & flow control Note Bridges interface at DLC layer.For LAN , routing & flow control are done in MAC. 1.3.4 Transport layer Break messages into packets , and reassembles packets Might multiplex several low-rate sessions all from same source and going to same destination Might split one high-rate session into multiple sessions(flow control) If network layer is unreliable,achieve reliable end-to-end connection End-to-end flow control 1.3.5 Session layer Provide transport layer with information needed to establish the session Achieve load sharing b/w many processors Access rights in setting up sessions Who pay for the service Handle interaction b/w 2 end points 1.3.6 Presentation layer Data encryption Data compression Code conversion 1.3.7 Application layer Consideration variation in service offered by various layers Sometimes , not conform to OSI model e.g.ATM ( Asynchronous Transfer Mode ) , broadband ISDN Section 1.4 A Simple Distributed Algorithm problem