* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Follow this link to Chapter 10
Survey
Document related concepts
Backpressure routing wikipedia , lookup
Network tap wikipedia , lookup
Distributed firewall wikipedia , lookup
IEEE 802.1aq wikipedia , lookup
Computer network wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
Multiprotocol Label Switching wikipedia , lookup
Airborne Networking wikipedia , lookup
Serial digital interface wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Deep packet inspection wikipedia , lookup
Asynchronous Transfer Mode wikipedia , lookup
Transcript
Data and Computer Communications Chapter 10 Packet Switching Basic Operation Data transmitted in small packets Longer messages split into series of packets Each packet contains a portion of user data plus some control info Control info Routing (addressing) info Packets are received, stored briefly (buffered) and past on to the next node Store and forward operation Use of Packets Advantages Line efficiency Single node to node link can be shared by many packets over time Packets queued and transmitted as fast as possible Data rate conversion Each station connects to the local node at its own speed Nodes buffer data if required to equalize rates Packets are accepted even when network is busy But delivery may slow down Priorities can be used Switching Technique Station breaks long message into packets Packets sent one at a time to the network Packets handled in two ways Datagram Virtual circuit Datagram Each packet treated independently Packets can take any practical route Packets may arrive out of order Packets may go missing Up to receiver to re-order packets and recover missing packets Virtual Circuit Preplanned route established before any packets sent Call request and call accept packets establish connection (handshaking) [Similar to circuit switching except that it is done with packets rather than signals] Each packet contains a virtual circuit identifier instead of destination address No routing decisions required for individual packets Clear request packet is used to drop circuit Not a dedicated path (unlike circuit switching, the path may be shared) Virtual Circuits versus Datagram Virtual circuits Network can provide sequencing and error control Packets are forwarded more quickly No routing decisions to make Less reliable Loss of a node looses all circuits through that node Datagram No call setup phase Better if few packets More flexible Routing can be used to avoid congested parts of the network Effect of Packet Size on Transmission Time Small packet size decreases total transmission time; but, there is a limit to this approach because of the header. Here, d is larger than c. So, transmission time starts to increase again as a function of header to data ratio. Circuit v Packet Switching Performance; 3 types of delay may affect performance: Propagation delay: Time for a signal to propagate from one node to another (mostly negligible) Transmission time: Time for a transmitter to transmit a block of data Node delay: Node's data processing time (delay) Event Timing External and Internal Operation One of the most important characteristics of a packet switching network is whether it uses datagrams or virtual circuits. There are 2 dimensions of this characteristic; one for the interface between station and it corresponding network node (external), and the other for the network itself (internal). Interface between station and network node Connection oriented [External Virtual Circuit Service] Station requests logical connection (virtual circuit) All packets identified as belonging to that connection & sequentially numbered Network delivers packets in sequence External virtual circuit service e.g. X.25 Different from internal virtual circuit operation Connectionless [External Datagram Service] Packets handled independently External datagram service Different from internal datagram operation Possible Combinations (1) External virtual circuit, internal virtual circuit Dedicated route through network External virtual circuit, internal datagram Network handles each packet separately Different packets for the same external virtual circuit may take different internal routes Network buffers at destination node for re-ordering Combinations (2) External datagram, internal datagram Packets treated independently by both network and user External datagram, internal virtual circuit External user does not see any connections External user sends one packet at a time Network sets up logical connections External Virtual Circuit and Datagram Operation Internal Virtual Circuit and Datagram Operation Routing Complex, crucial aspect of packet switched networks Characteristics required Correctness Simplicity Robustness Stability Fairness Optimality Efficiency Performance Criteria Used for selection of route and based on: Minimum hop or: Least cost See Stallings appendix 10A for routing algorithms Decision Time and Place 2 key characteristics concerned with routing decisions are: Decision Time Packet or virtual circuit basis meaning decision is made when packet is sent (datagram approach), or when virtual circuit is set up Decision Place Distributed Decision made by each node Centralized Decision made by a central network node Source Decision made by source Network Information Source and Update Timing Routing decisions are usually (not not always) based on knowledge of network Distributed routing Nodes use local knowledge May collect info from adjacent nodes May collect info from all nodes on a potential route Central routing Collect info from all nodes Update timing When is network info held by nodes, updated? Fixed - never updated Adaptive - regular updates Routing Strategies Fixed Flooding Random Adaptive Fixed Routing Single permanent route for each source to destination pair Determine routes using a least cost algorithm (appendix 10A) Route fixed, at least until a change in network topology happens Fixed Routing Tables For each sourcedestination pair, the routing table shows the next node on the route. Flooding No network info required Packet sent by node to every neighbor Incoming packets retransmitted on every link except incoming link Eventually a number of copies will arrive at destination Each packet is uniquely numbered so duplicates can be discarded Nodes can remember packets already forwarded to keep network load in bounds Can include a hop count in packets Hop count is set to a maximum value. When packet passes a node, it decrements the count. Packet is discarded if the count reaches zero before reaching its destination Flooding Example Properties of Flooding All possible routes are tried Very robust At least one packet will have taken minimum hop count route Can be used to set up virtual circuit All nodes are visited Useful to distribute information (e.g. routing) Random Routing Node selects one outgoing path for retransmission of incoming packet Selection can be random or round robin Can select outgoing path based on probability calculation No network info needed Route is typically neither least cost nor minimum hop Adaptive Routing Used by almost all packet switching networks Routing decisions change as conditions on the network change Failure Congestion Requires info about network Decisions are more complex The tradeoff here is between quality of network info and overhead associated with the time involved in gathering the information, etc. Adaptive Routing - Advantages Improved performance Aids in congestion control (covered in chapter 12) X.25 Originally approved in 1976 Specifies interface between host and packet switched network Almost universal on packet switched networks and packet switching in ISDN Defines three layers Physical Link Packet X.25 - Physical Layer Specifies interface between attached station and link to node Data terminal equipment DTE (user equipment) Data circuit terminating equipment DCE (node) Uses physical layer specification X.21, but often other standards such as RS232 are used instead Provides for a reliable transfer across physical link by transmitting the data as a sequence of frames X.25 - Link Layer Uses Link Access Protocol Balanced (LAPB) Subset of HDLC see LAPB frame structure (chapter 7 page 222) and User Data and X.25 Control Information (chapter 10 page 331) X.25 - Packet Provides external virtual circuit service which enables logical connections (virtual circuits) between subscribers X.25 Use of Virtual Circuits Virtual Circuit Service Provides for 2 types of virtual circuits: Virtual Call Dynamically established virtual circuits using a call setup and call clearing procedure Permanent virtual circuit Fixed network assigned virtual circuit; data transfer happens same way as virtual calls, but no call setup and clearing is required. Virtual Call · See figure 10.16 and explanations on pages 331-333 · Left side shows the packets exchanged between user machine A and the packet switching node to which it is attached Packet Format (see Page 333) Multiplexing Most important service provided by X.25 Packets contain a 12 bit virtual circuit number DTE is allowed to establish up to 4095 (212-1) simultaneous virtual circuits with other DTEs over a single DTC-DCE link Number zero is reserved for diagnostic packets common to all virtual circuits The rest of the numbers are assigned by the DCE or DTE depending on which one is initiating the virtual circuit call Virtual Circuit Numbering Used when address overflow from top or bottom happens Flow and Error Control Like HDLC (Chapter 7) using sliding window protocol [3 bit, 7 bit, or 15 bit sequence numbers] with: P(S)=Send sequence number and P(R)=Receive sequence number [number of next packet expected from the other side] Acknowledgement has either local or end-to-end significance. When D bit=0, acknowledgement is exercises between DTE and the network. When D bit=1, acknowledgement is exercises between DTE and the remote DTE The error control scheme is Go-Back-N ARQ Packet Sequences X.25 provides the capacity to identify an adjacent sequence of data packets, which is called a complete packet sequence This allows the network to form longer blocks of data sent across network with smaller packet size without loss of block integrity To specify this mechanism, X.25 defines 2 types of packets: A packets M bit 1 (means there are additional complete packets to follow), D bit 0 B packets The rest (all other packets) In a complete packet sequence, there are zero or more A packets followed by a B packet. The network may combine or break down this sequence to make larger or smaller packets for transmission. See figure 10.19 Reset and Restart Two methods that X.25 uses to recover from errors are: Reset Reinitialize virtual circuit Sequence numbers set to zero Packets in transit lost Up to higher level protocol to recover lost packets Triggered by loss of packet, sequence number error, congestion, loss of network internal virtual circuit Restart Equivalent to a clear request on all virtual circuits E.g. temporary loss of network access