Presentation is loading. Please wait.

Presentation is loading. Please wait.

Advantages of Computer Networks Enables users to share hardware like scanners and printers. This reduces costs by reducing the number of hardware items.

Similar presentations


Presentation on theme: "Advantages of Computer Networks Enables users to share hardware like scanners and printers. This reduces costs by reducing the number of hardware items."— Presentation transcript:

1 Advantages of Computer Networks Enables users to share hardware like scanners and printers. This reduces costs by reducing the number of hardware items bought. Allows users access to data stored on others' computers. This keeps everyone up-to-date on the latest data Can share access to the Internet.

2 Advantages of Computer Networks Can even let users run programs that are not installed on their own computers but are installed elsewhere in the network.  reduces the effort for networks administrators to keep programs configured correctly and saves a lot of storage space.

3 Data Flow Path taken by data within a device, network, or organization, as it moves from its source to its destination (a data repository or a data user). Categorized by direction of flow:  Simplex  Half-duplex  Full-duplex

4 Definitions A network is a set of devices (often referred to as nodes) connected by communication links. A node can be a host (such as a computer, a laptop, a smart phone etc.) or a network device (such as a switch, a router, etc.). A link is a communication pathway that transfer data from one device to another.

5 Network Criteria A network must be able to meet a certain number of criteria.  Performance  Reliability

6 Performance Can be measured in many ways! –Transmit time: the amount of time required for a message to travel from one device to another. –Response time: the elapsed time between an inquiry and a response. Often evaluated by two networking metrics: throughput and delay.

7 Reliability Accuracy of delivery. Measured by: –Frequency of failures –Time it takes to recover from a failure –The network’s robustness in a catastrophe.

8 Network Criteria A network must be able to meet a certain number of criteria. Performance Reliability

9 Network Configuration There are a number of ways that computers can be connected together to form networks. Physical attributes of a network include:  Type of connection  Physical topology

10 Type of Connection For communication to occure, two devices must be connected in someway to the same link at the same time. Two possible connections: –Point-to-point –Multipoint

11 Physical Structures: Type of connection 1. Point –to-point Dedicated link between two devices. Most of them uses an actual length of wire or cable to connect the two ends but other options,such as microwave satellite are possible.

12 Physical Structures: Type of connection 2. Multipoint Is one in which more than two specific devices share a single link

13 1/18/2006CSCI 363 Computer Networks13 Links (a) (b) point-to-point multiple-access Geographical coverage and scalability are limited. Each node needs one interface for each link.

14 Network Configuration Physical attributes of a network include: Type of connection  Physical topology

15 Physical Topology Two or more links for a topology. –The topology of a network refers to the geometric representation of the relationship of all the links and linking devices (nodes) to one another. The term physical topology refers to the way in which a network is laid out physically.

16 The way in which a network is laid out physically. Physical Topology

17 Networks Models Computer networks are created by different entities. Standards are needed so that these heterogeneous networks can communicate. The two most know standards: –OSI model: defines a seven layer network. –Internet model: defines a five layer network.

18 Network category is determined by its size, ownership, the distance it cover and its physical architecture. Network Categories

19 LAN ( Local Area Network) Privately owned and links the devices in a single office, building or campus LANs designed to allow resources to be shared between PCs or workstations. The resources may be H.W (e.g. printer) or S.W (applications program) or data. In LANs one of the computers has a large capacity drive and becomes a server to other clients.

20 LAN ( Local Area Network) S/W stored on server and used as needed by the whole group. LAN size determined by licensing restrictions (no of users per copy of S/W) LAN use only one type of transmission medium. The most common LAN topologies are bus, ring and star.

21 MAN (Metropolitan Area Network) Owned by private company or it may be a service provided by public company ( such as local tel.-company) Extended over an entire city. May be single network such as a cable television network, or it may be connected number of LANs into a large network so that resources may be shared LAN-TO- LAN.

22 WAN (Wide Area Network) Provides long distance transmission of data, voice, image and video information over large areas ( country or whole world) In contrast to LAN, WAN may utilize public or private communication equipments or combination.

23 Interconnection of Networks: Internetwork An internet (small i) is two or more networks that can communicate with each other.

24 1/18/2006CSCI 363 Computer Networks24 Internetworking To interconnect two or more networks, one needs a gateway or router. Host-to-host connectivity is only possible if there’s a uniform addressing scheme and a routing mechanism. Messages can be sent to a single destination (unicast), to multiple destinations (multicast), or to all possible destinations (broadcast).

25

26 2.26 Chapter 2 Network Models Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

27 A Network is.. A combination of hardware (HW) and software (SW) that send data from one location to another. –HW: physical equipment that carries signals from one point of the network to another –SW: instruction sets that make possible the services that we expect from a network. 2.27 Data transformed into the form of electromagnetic signals when sent along a transmission medium (link).

28 Network Architecture General blue prints that guide the design and implementation of networks. Examples: –OSI architecture –Internet architecture Abstraction of the different services and procedures. Abstraction naturally leads to layering. 2.28

29 Concept of Layers Each layer provides a specific set of services. Services are provided through the definition of protocols. Each layer uses the services provided by the lower/above layers. Layers use protocols to communicate with each others. 2.29

30 Concept of Layers Each layer provides a specific set of services. Layering provides two nice features: –Decomposes the problem of building a network into more manageable components. –Provides a more modular design, modifying the functionality of the different layers without affecting the whole system! 2.30

31 Layered Architecture Between machines, layer x on one machine communicate with layer x on another machine. This communication is govern by an agreed-upon series of rules and convention called protocols. Communication between machines is a peer-to- peer process using the protocols appropriate to a given layer. 2.31

32 Layered Architecture TCP/IP model consists of 5 layers. Each layer defines a family of functions distinct from those of the other layers. Within a single machine, each layer calls upon the services of the layer just below it. –e.g. layer 3 uses the services provided by layer 2 and provides services for layer 4. 2.32

33 Peer-to-Peer Process Interfaces Between Layers –The passing of the data and network information down/up through the layers in sending/ receiving require an interface between each pair of adjacent layers. –Well-defined interfaces and layer functions provide modularity to a network. 2.33

34 Encapsulation Another aspect of data communications in the OSI model is encapsulation. –The data protion of a packet at level N-1 carries the whole packet (data and header and maybe trailer) from level N. –Level N-1 is not aware of which part of the encapsulated packet is data and which part is the header or trailer. –For level N-1, the whole packet coming from level N is treated as one logical unit. 2.34

35 2.35

36 Physical layer The physical layer coordinate the functions required to carry a bit stream over a physical medium including: –Dealing with the mathematical and electrical specifications of the interfaces and transmission medium. –It defines the procedures and functions that physical devices and interfaces have to perform for transmission to occur. 2.36

37 Data Link layer The data link layer transforms the physical layer to reliable link. It makes the physical layer appear error-free to the upper layer (network layer). The data link layer provides hop-to-hop delivery. 2.37

38 2.38 Figure 2.7 Hop-to-hop delivery

39 Network layer The network layer is responsible for the delivery of individual packets from the source host to the destination host. At the sender side, data is received from the higher layer (transport) and passed down to the lower layer (data link). At the sender side, data is received from the lower layer (data link) and passed up to the upper layer (transport). 2.39

40 Network layer Again, the network layer is responsible for the delivery of individual packets from source to destination. If two systems are connected to the same link, there is usually no need for a network layer. If the two systems are attached to different networks with connecting devices between the networks, there is often a need for the network layer to accomplish source-to-destination delivery. 2.40

41 2.41 Figure 2.9 Source-to-destination delivery

42 Network layer Other responsibilities of network layer include: –Logical addressing –Routing 2.42

43 Transport layer The transport layer is responsible for the delivery of a message from one process to another. At the sender side, it receives application data and passes it down to the network layer. At the receiver side, it receives data from the network layer and passes it up to the appropriate process. 2.43

44 Transport layer Again, the transport layer is responsible for the delivery of a message from one process to another. Unlike the network layer which is source-to- destination delivery, the transport layer is process-to-process delivery of the entire message. 2.44

45 2.45 Figure 2.11 Reliable process-to-process delivery of a message

46 2.46 2-4 TCP/IP PROTOCOL SUITE TCP/IP is a hierarchical protocol made up of interactive modules, each of which provides a specific functionality. The layers of the TCP/IP protocol suite contain relatively independent protocols. The term hierarchical means that each upper- level protocol is supported by one or more lower-level protocols.

47 Physical and Data Link Layers –No specific protocol is defined at this layer, rather, TCP/IP model supports all the standard and proprietary protocols. –For instance, a network in a TCP/IP internetwork can be a local-area network or a wide-area network. 2.47 2-4 TCP/IP PROTOCOL SUITE

48 Network layer (internetwork layer) –TCP/IP at this layer supports the Internetworking Protocol (IP) –There are also some other protocols that support data movement in this layer. Including: ARP, RARP, ICMP, and IGMP. 2.48 2-4 TCP/IP PROTOCOL SUITE

49 Internetworking Protocol (IP)  Most important protocol of the TCP/IP network stack!  Implements internetworking.  IP is an unreliable and connectionless protocol- a best-effort delivery.  It is host-to-host protocol. 2.49 Protocols at The Network Layer

50 Transport Layer –In this layer, the protocol is responsible for delivery of message from a process to another process. 2.50 2-4 TCP/IP PROTOCOL SUITE

51 User Datagram Protocol (UDP)  It adds port addresses, checksum error control, and length information to the data from the upper layer. Transmission Control Protocol (TCP)  It is reliable and connection-oriented. 2.51 Protocols at The Transport Layer

52 2.52 2-5 ADDRESSING Four levels of addresses are used in an internet employing the TCP/IP protocols: physical (link ) addresses, physical (link ) addresses, logical (IP) addresses, logical (IP) addresses, port addresses, port addresses,

53 2.53 Figure 2.17 Addresses in TCP/IP

54 2.54 Figure 2.18 Relationship of layers and addresses in TCP/IP

55 Physical Addresses –It is knwon as link address. –It is the address of a node as defined by its LAN or WAN. –The size and format of the address depends on the network. Ethernet uses 6-bytes (48-bits)  NIC LocalTalk (Apple) uses 1-byte dynamic address 2.55 2-5 ADDRESSING

56 2.56 Figure 2.19 Physical addresses

57 2.57 As 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: Example 2.2 07:01:02:01:2C:4B A 6-byte (12 hexadecimal digits) physical address. Also known as a MAC address

58 Logical Addresses –Necessary for universal communications that are independent of underlying physical networks. –Physical address is not enough in an internetwork environment where the different network can have different address formats. –A logical address in the Internet is 32-bits. –No two hosts on the Internet have the same IP address. 2.58 2-5 ADDRESSING

59 2.59 Figure 2.20 IP addresses

60 Port Addresses –It is necessary for the receiver device that runs multiple process to receive data simultaneously  this make a need to label each process –A port address is 16-bits. 2.60 2-5 ADDRESSING

61 2.61 Figure 2.21 Port addresses

62 2.62 Example 2.5 As we will see in Chapter 23, a port address is a 16-bit address represented by one decimal number as shown. 753 A 16-bit port address represented as one single number.

63 3.63 3-6 PERFORMANCE One important issue in networking is the performance of the network—how good is it?  Bandwidth  Throughput  Latency (Delay)

64 In networking, we use the term bandwidth in two contexts. ❏ The first, bandwidth in hertz, refers to the range of frequencies in a composite signal or the range of frequencies that a channel can pass. ❏ The second, bandwidth in bits per second, refers to the speed of bit transmission in a channel or link. Bandwidth

65 3.65 The bandwidth of a subscriber line is 4 kHz for voice or data. The bandwidth of this line for data transmission can be up to 56,000 bps using a sophisticated modem to change the digital signal to analog. Example 3.42

66 3.66 If the telephone company improves the quality of the line and increases the bandwidth to 8 kHz, we can send 112,000 bps by using the same technology as mentioned in Example 3.42. Example 3.43

67 Is a measure of how fast we can actually send data through a network. The bandwidth is potential measurement of a link; the throughput is an actual measurement of how fast we can send data. Throughput less than Bandwidth Throughput

68 3.68 A network with bandwidth of 10 Mbps can pass only an average of 12,000 frames per minute with each frame carrying an average of 10,000 bits. What is the throughput of this network? Solution We can calculate the throughput as Example 3.44 The throughput is almost one-fifth of the bandwidth in this case.

69 Latency defines how long it takes for an entire message to completely arrive at the destination from the time the first bit is sent out from the source Latency ( Delay) Latency (Delay) = propagation time + transmission time +queuing time + processing time

70 time required for a bit to travel from the source to the destination Propagation speed depend on the medium and on the frequency of the signal Ex: light propagate by 3x108m/s in vacuum. It is lower in air ; it is much lower in cable. 1. Propagation time

71 3.71 What is the propagation time if the distance between the two points is 12,000 km? Assume the propagation speed to be 2.4 × 108 m/s in cable. Solution We can calculate the propagation time as Example 3.45 The example shows that a bit can go over the Atlantic Ocean in only 50 ms if there is a direct cable between the source and the destination.

72  The time required for transmission of a message.  It depends on the size of the message and the bandwidth of the channel. 2. Transmission time

73 3.73 What are the propagation time and the transmission time for a 2.5-kbyte message (an e-mail) if the bandwidth of the network is 1 Gbps? Assume that the distance between the sender and the receiver is 12,000 km and that light travels at 2.4 × 108 m/s. Solution We can calculate the propagation and transmission time as shown on the next slide: Example 3.46

74 3.74 Note that in this case, because the message is short and the bandwidth is high, the dominant factor is the propagation time, not the transmission time. The transmission time can be ignored. Example 3.46 (continued)

75 3.75 What are the propagation time and the transmission time for a 5- Mbyte message (an image) if the bandwidth of the network is 1 Mbps? Assume that the distance between the sender and the receiver is 12,000 km and that light travels at 2.4 × 10 8 m/s. Solution We can calculate the propagation and transmission times as shown on the next slide. Example 3.47

76 3.76 Note that in this case, because the message is very long and the bandwidth is not very high, the dominant factor is the transmission time, not the propagation time. The propagation time can be ignored. Example 3.47 (continued)

77 Queuing time: the time needed for each end device to hold the message before it can be processed. It changes with the load imposed on the network, if there is heavy traffic on the network, the queuing time increases. 3. Queuing time

78 Building large networks A network is a set of connected devices. When ever we have multiple devices, we have the problem of how to connect them! –Point-to-point (mesh or star topology): impossible for large networks. –Multipoint (bus topology): does not work for large network since the distances between devices and the total number of devices increase beyond the capacity of the media and equipments. 7.78

79 Switching is the solution A switched network consists of a series of interlinked nodes, called switches. Switches are devices capable of making temporary connections between any two or more devices connected to the switch. 7.79

80 8.80 Figure 8.1 Switched network

81 8.81 Figure 8.2 Taxonomy of switched networks

82 8.82 8-1 CIRCUIT-SWITCHED NETWORKS A circuit-switched network consists of a set of switches connected by physical links. A connection between two stations is a dedicated path made of one or more links. However, each connection uses only one dedicated channel on each link. Each link is normally divided into n channels by using FDM or TDM.

83 8.83 In circuit switching, the resources need to be reserved during the setup phase; the resources remain dedicated for the entire duration of data transfer until the teardown phase. Note Switching at the physical layer in the traditional telephone network uses the circuit-switching approach. Note

84 8.84 8-2 DATAGRAM NETWORKS In data communications, we need to send messages from one end system to another. If the message is going to pass through a packet- switched network, it needs to be divided into packets of fixed or variable size. The size of the packet is determined by the network and the governing protocol.

85 8.85 In a packet-switched network, there is no resource reservation; resources are allocated on demand. Note A switch in a datagram network uses a routing table that is based on the destination address. The destination address in the header of a packet in a datagram network remains the same during the entire journey of the packet.

86 8.86 Figure 8.9 Delay in a datagram network

87 8.87 Switching in the Internet is done by using the datagram approach to packet switching at the network layer. Note

88 8.88 8-3 VIRTUAL-CIRCUIT NETWORKS A virtual-circuit network is a cross between a circuit- switched network and a datagram network. It has some characteristics of both.

89 8.89 In virtual-circuit switching, all packets belonging to the same source and destination travel the same path; but the packets may arrive at the destination with different delays if resource allocation is on demand. Note

90 Chapter 10 Part III: Data Link Layer Error Detection and Correction © 2012 by McGraw-Hill Education. This is proprietary material solely for authorized instructor use. Not authorized for sale or distribution in any manner. This document may not be copied, scanned, duplicated, forwarded, distributed, or posted on a website, in whole or part.

91 10.91 Data Link Layer Duties

92 10.92 10-1 INTRODUCTION Let us first discuss some issues related, directly or indirectly, to error detection and correction.

93 10.93 10.1.2 Redundancy The central concept in detecting or correcting errors is redundancy. To be able to detect or correct errors, we need to send some extra bits with our data. These redundant bits are added by the sender and removed by the receiver. Their presence allows the receiver to detect or correct corrupted bits.

94 10.94 10.1.3 Detection versus Correction The correction of errors is more difficult than the detection. WHY? In error correction, we need to know the exact number of bits that are corrupted and, more importantly, their location in the message. However, in error detection we need only to know is there an error or not.

95 10.95 10-2 BLOCK CODING  In block coding, we divide our message into blocks, each of k bits, called datawords.  We add r redundant bits to each block to make the length n = k + r. The resulting n-bit blocks are called codewords.  How the extra r bits are chosen or calculated is something we will discuss later.

96 10.96 10.2.1 Error Detection How can errors be detected by using block coding? If the following two conditions are met, the receiver can detect a change in the original codeword. 1. The receiver has (or can find) a list of valid codewords. 2. The original codeword has changed to an invalid one.

97 10.97 Error Detection Methods

98 10.98 Figure 10.15: Division in CRC encoder

99 10.99 Figure 10.16: Division in the CRC decoder for two cases

100 10.100 Figure 10.21: A polynomial to represent a binary word Note that: the degree of a polynomial is 1 less that the number of bits in the pattern. What is the polynomial degree and bit pattern for x 6 + x+ 1?

101 10.101 10-5 CHECKSUM  Checksum is an error-detecting technique that can be applied to a message of any length.  In the Internet, the checksum technique is mostly used at the network and transport layer rather than the data-link layer.  Like CRC, checksum based on the concept of redundancy.

102 10.102 Figure 10.16: Example 10.24 100100 36 10 _________ 0110 6 1001 9 101101 45 10 _________ 1111 15 0000 0

103 11.103 Chapter 11 Data Link Control Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

104 11.104 11-1 FRAMING The data link layer needs to pack bits into frames, so that each frame is distinguishable from another.

105 11.105 Figure 11.1 A frame in a character-oriented protocol

106 11.106 Figure 11.2 Byte stuffing and unstuffing

107 11.107 Byte stuffing is the process of adding 1 extra byte whenever there is a flag or escape character in the text. Note

108 11.108 Figure 11.3 A frame in a bit-oriented protocol

109 11.109 Bit stuffing is the process of adding one extra 0 whenever five consecutive 1s follow a 0 in the data, so that the receiver does not mistake the pattern 0111110 for a flag. Note

110 11.110 Figure 11.4 Bit stuffing and unstuffing

111 11.111 11-2 FLOW AND ERROR CONTROL The most important responsibilities of the data link layer are flow control and error control. Collectively, these functions are known as data link control. Flow Control Error Control Topics discussed in this section:

112 11.112 Flow control refers to a set of procedures used to restrict the amount of data that the sender can send before waiting for acknowledgment. Note

113 11.113 Error control in the data link layer is based on automatic repeat request, which is the retransmission of data. Note

114 11.114 11-5 NOISY CHANNELS Although the Stop-and-Wait Protocol gives us an idea of how to add flow control to its predecessor, noiseless channels are nonexistent. We discuss three protocols in this section that use error control. Stop-and-Wait Automatic Repeat Request Go-Back-N Automatic Repeat Request Selective Repeat Automatic Repeat Request Topics discussed in this section:

115 11.115 Figure 11.10 Design of the Stop-and-Wait ARQ Protocol

116 11.116 Figure 11.11 shows an example of Stop-and-Wait ARQ. Frame 0 is sent and acknowledged. Frame 1 is lost and resent after the time-out. The resent frame 1 is acknowledged and the timer stops. Frame 0 is sent and acknowledged, but the acknowledgment is lost. The sender has no idea if the frame or the acknowledgment is lost, so after the time-out, it resends frame 0, which is acknowledged. Example 11.3

117 11.117 Figure 11.11 Flow diagram for Example 11.3

118 11.118 Figure 11.12 Send window for Go-Back-N ARQ

119 11.119 The send window is an abstract concept defining an imaginary box of size 2 m − 1 with three variables: Sf, Sn, and S size. Note

120 11.120 The send window can slide one or more slots when a valid acknowledgment arrives. Note

121 11.121 Figure 11.13 Receive window for Go-Back-N ARQ

122 11.122 The receive window is an abstract concept defining an imaginary box of size 1 with one single variable R n. The window slides when a correct frame has arrived; sliding occurs one slot at a time. Note

123 11.123 Figure 11.14 Design of Go-Back-N ARQ

124 11.124 Figure 11.15 Window size for Go-Back-N ARQ

125 11.125 In Go-Back-N ARQ, the size of the send window must be less than 2 m ; the size of the receiver window is always 1. Note

126 11.126 Figure 11.16 Flow diagram for Example 11.6

127 11.127 Figure 11.17 Flow diagram for Example 11.7

128 11.128 Stop-and-Wait ARQ is a special case of Go-Back-N ARQ in which the size of the send window is 1. Note

129 11.129 Figure 11.18 Send window for Selective Repeat ARQ

130 11.130 Figure 11.19 Receive window for Selective Repeat ARQ

131 11.131 Figure 11.20 Design of Selective Repeat ARQ

132 11.132 Figure 11.21 Selective Repeat ARQ, window size

133 11.133 In Selective Repeat ARQ, the size of the sender and receiver window must be at most one-half of 2 m. Note

134 11.134 Figure 11.23 Flow diagram for Example 11.8

135 11.135 Figure 11.24 Design of piggybacking in Go-Back-N ARQ

136 11.136 11-6 HDLC High-level Data Link Control (HDLC) is a bit-oriented protocol for communication over point-to-point and multipoint links. It implements the ARQ mechanisms we discussed in this chapter. Configurations and Transfer Modes Frames Control Field Topics discussed in this section:

137 11.137 Figure 11.27 HDLC frames

138 11.138 11-7 POINT-TO-POINT PROTOCOL Although HDLC is a general protocol that can be used for both point-to-point and multipoint configurations, one of the most common protocols for point-to-point access is the Point-to-Point Protocol (PPP). PPP is a byte-oriented protocol. Framing Transition Phases Multiplexing Multilink PPP Topics discussed in this section:

139 11.139 Figure 11.32 PPP frame format

140 11.140 PPP is a byte-oriented protocol using byte stuffing with the escape byte 01111101. Note

141 11.141 Figure 11.39 IP datagram encapsulated in a PPP frame

142 Chapter 12 Multiple Access Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

143 Multiple Access  Broadcast link used in LAN consists of multiple sending and receiving nodes connected to or use a single shared link Broadcast links Examples

144 Figure 12.1 Data link layer divided into two functionality-oriented sublayers Link Layer Control (LLC) MAC Responsible for error and flow control Control Responsible framing and MAC address and Multiple Access Control

145 Multiple Access  Problem: When two or more nodes transmit at the same time, their frames will collide and the link bandwidth is wasted during collision  How to coordinate the access of multiple sending/receiving nodes to the shared link??? Solution: We need a protocol to coordinate the transmission of the active nodes These protocols are called Medium or Multiple Access Control (MAC) Protocols belong to a sublayer of the data link layer called MAC (Medium Access Control) What is expected from Multiple Access Protocols: –Main task is to minimize collisions in order to utilize the bandwidth by: Determining when a station can use the link (medium) what a station should do when the link is busy what the station should do when it is involved in collision

146 Figure 12.2 Taxonomy of multiple-access protocols discussed in this chapter

147 Random Access Random Access (or contention) Protocols: –No station is superior to another station and none is assigned the control over another. –A station with a frame to be transmitted can use the link directly based on a procedure defined by the protocol to make a decision on whether or not to send.

148 Random Access – Carrier Sense Multiple Access (CSMA)  If a frame was sent by a station, All stations knows immediately so they can wait before start sending –  A station with frames to be sent, should sense the medium for the presence of another transmission (carrier) before it starts its own transmission This can reduce the possibility of collision but it cannot eliminate it. –Collision can only happen when more than one station begin transmitting within a short time (the propagation time period)

149 Types of CSMA Protocols Different CSMA protocols that determine:  What a station should do when the medium is idle?  What a station should do when the medium is busy? 1.Non-Persistent CSMA 2.1-Persistent CSMA 3.p-Persistent CSMA

150 Nonpersistent CSMA  A station with frames to be sent, should sense the medium 1. If medium is idle, transmit; otherwise, go to 2 2. If medium is busy, (backoff) wait a random amount of time and repeat 1  Non-persistent Stations are deferential (respect others)  Performance:  Random delays reduces probability of collisions because two stations with data to be transmitted will wait for different amount of times.  Bandwidth is wasted if waiting time (backoff) is large because medium will remain idle following end of transmission even if one or more stations have frames to send Random Waiting times Wasted time

151 1-persistent CSMA To avoid idle channel time, 1-persistent protocol used Station wishing to transmit listens to the medium: 1. If medium idle, transmit immediately; 2. If medium busy, continuously listen until medium becomes idle; then transmit immediately with probability 1  Performance  1-persistent stations are selfish  If two or more stations becomes ready at the same time, collision guaranteed

152 P-persistent CSMA Time is divided to slots where each Time unit (slot) typically equals maximum propagation delay Station wishing to transmit listens to the medium: 1. If medium idle,  transmit with probability (p), OR  wait one time unit (slot) with probability (1 – p), then repeat 1. 2. If medium busy, continuously listen until idle and repeat step 1 3. Performance Reduces the possibility of collisions like nonpersistent Reduces channel idle time like 1- persistent

153 Flow diagram for three persistence methods

154 CSMA/CD (Collision Detection)  CSMA (all previous methods) has an inefficiency:  If a collision has occurred, the channel is unstable until colliding packets have been fully transmitted  CSMA/CD (Carrier Sense Multiple Access with Collision Detection) overcomes this as follows:  While transmitting, the sender is listening to medium for collisions.  Sender stops transmission if collision has occurred reducing channel wastage. CSMA/CD is Widely used for bus topology LANs (IEEE 802.3, Ethernet).

155 CSMA/CD Protocol Use one of the CSMA persistence algorithm (non-persistent, 1-persistent, p-persistent) for transmission If a collision is detected by a station during its transmission then it should do the following: –Abort transmission and –Transmit a jam signal (48 bit) to notify other stations of collision so that they will discard the transmitted frame also to make sure that the collision signal will stay until detected by the furthest station –After sending the jam signal, backoff (wait) for a random amount of time, then –Transmit the frame again

156 Exponential Backoff Algorithm Ethernet uses the exponential backoff algorithms to determine the best duration of the random waiting period after the collision happens Algorithm:  Set “slot time” equal to 2*maximum propagation delay + Jam sequence transmission time (= 51.2 usec for Ethernet 10-Mbps LAN)  After K th collision, select a random number (R) between 0 and 2 k –1 and wait for a period equal to (R*slot time) then retransmit when the medium is idle, for example:  After first collision (K=1), select a number (R) between 0 and 2 1 –1 {0,1} and wait for a period equal to R*slot times (Wait for a period 0 usec or 1x51.2 usec) then retransmit when the medium is idle  Do not increase random number range, if K=10  Maximum interval {0 – 1023}  Give up after 16 unsuccessful attempts and report failure to higher layers

157 Figure 12.14 Flow diagram for the CSMA/CD N=N+1 N=0 N==16 Abort N < 10 K=N K=10 Choose R between 0 & 2 k - 1 Wait R*slot time No Yes

158 Exponential Backoff Algorithm Reduces the chance of two waiting stations picking the same random waiting time When network traffic is light, it results in minimum waiting time before transmission As congestion increases ( traffic is high), collisions increase, stations backoff by larger amounts to reduce the probability of collision. Exponential Back off algorithm gives last-in, first-out effect –Stations with no or few collisions will have the chance to transmit before stations that have waited longer because of their previous unsuccessful transmission attempts.

159 12-3 CHANNELIZATION Channelization is a multiple-access method in which the available bandwidth of a link is shared in time, frequency, or through code, between different stations. In this section, we discuss three channelization protocols. Frequency-Division Multiple Access (FDMA) Time-Division Multiple Access (TDMA) Code-Division Multiple Access (CDMA) Topics discussed in this section:

160 Figure 12.21 Frequency-division multiple access (FDMA)

161 FDMA: Frequency Division Multiple Access: –Transmission medium is divided into M separate frequency bands –Each station transmits continuously on the assigned band at an average rate of R/M –A node is limited to an average rate equal R/M (where M is number of nodes) even when it is the only node with frame to be sent 12-3 CHANNELIZATION - FDMA

162 Figure 12.22 Time-division multiple access (TDMA)

163 TDMA: Time Division Multiple Access –The entire bandwidth capacity is a single channel with its capacity shared in time between M stations –A node must always wait for its turn until its slot time arrives even when it is the only node with frames to send –A node is limited to an average rate equal R/M (where M is number of nodes) even when it is the only node with frame to be sent 12-3 CHANNELIZATION - TDMA

164 CDMA: Code Division Multiple Access In CDMA, one channel carries all transmissions simultaneously Each station codes its data signal by a specific codes before transmission The stations receivers use these codes to recover the data for the desired station 12-3 CHANNELIZATION - CDMA

165 Chapter 13 Wired LANs: Ethernet Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

166 13-1 IEEE STANDARDS Ethernet: It is a LAN protocol that is used in Bus and Star topologies and implements CSMA/CD as the medium access method  Original (traditional) Ethernet developed in 1980 by three companies: Digital, Intel, Xerox (DIX).  In 1985, the Computer Society of the IEEE started a project, called Project 802, to set standards to enable intercommunication among equipment from a variety of manufacturers.  Current version is called IEEE Ethernet

167 IEEE Ethernet In IEEE 802.3 Ethernet Data link layer is split into two sublayers: –Bottom part: MAC The frame is called IEEE 802.3 Handles framing, MAC addressing, Medium Access control Specific implementation for each LAN protocol –Defines CSMA/CD as the access method for Ethernet LANs and Token passing method for Token Ring. Implemented in hardware –Top part: LLC (Logical Link Control) The subframe is called IEEE 802.2 Provides error and flow control if needed It makes the MAC sublayer transparent –Allows interconnectivity between different LANs data link layers Used to multiplex multiple network layer protocols in the data link layer frame Implemented in software

168 Figure 13.1 IEEE standard for LANs

169 Ethernet Provides Unreliable, connectionless Service –Ethernet data link layer protocol provides connectionless service to the network layer No handshaking between sending and receiving adapter. –Ethernet protocol provides Unreliable service to the network layer : Receiving adapter doesn’t send ACK or NAK to sending adapter This means stream of datagrams passed to network layer can have gaps (missing data) –Gaps will be filled if application is using reliable transport layer protocol Otherwise, application will see the gaps

170 Preamble: –8 bytes with pattern 10101010 used to synchronize receiver, sender clock rates. –In IEEE 802.3, eighth byte is start of frame (10101011) Addresses: 6 bytes (explained latter) Type (DIX) –Indicates the type of the Network layer protocol being carried in the payload (data) field, mostly IP but others may be supported such as IP (0800), Novell IPX (8137) and AppleTalk (809B), ARP (0806) ) –Allow multiple network layer protocols to be supported on a single machine (multiplexing) –Its value starts at 0600h (=1536 in decimal) Length (IEEE 802.3): number of bytes in the data field. –Maximum 1500 bytes (= 05DCh) CRC: checked at receiver, if error is detected, the frame is discarded –CRC-32 Data: carries data encapsulated from the upper-layer protocols Pad: Zeros are added to the data field to make the minimum data length = 46 bytes Ethernet Frame

171

172 Figure 13.5 Minimum and maximum lengths

173 Frame length: Minimum: 64 bytes (512 bits) Maximum: 1518 bytes (12,144 bits) Note

174 19.174 Chapter 19 Network Layer: Logical Addressing Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

175 19.175 An IPv4 address is 32 bits long. Note The IPv4 addresses are unique and universal (all nodes connecting Internet must have IP addresses). The address space of IPv4 is 2 32 or 4,294,967,296.

176 19.176 Figure 19.1 Dotted-decimal notation and binary notation for an IPv4 address

177 19.177 Change the following IPv4 addresses from binary notation to dotted-decimal notation. Example 19.1 Solution We replace each group of 8 bits with its equivalent decimal number (see Appendix B) and add dots for separation.

178 19.178 Change the following IPv4 addresses from dotted-decimal notation to binary notation. Example 19.2 Solution We replace each decimal number with its binary equivalent (see Appendix B).

179 19.179 Find the error, if any, in the following IPv4 addresses. Example 19.3 Solution a. There must be no leading zero (045). b. There can be no more than four numbers. c. Each number needs to be less than or equal to 255. d. A mixture of binary notation and dotted-decimal notation is not allowed.

180 19.180 In classful addressing, the address space is divided into five classes: A, B, C, D, and E. Note

181 19.181 Figure 19.2 Finding the classes in binary and dotted-decimal notation Class D: multicast Class E: reserved

182 19.182 Find the class of each address. a. 00000001 00001011 00001011 11101111 b. 11000001 10000011 00011011 11111111 c. 14.23.120.8 d. 252.5.15.111 Example 19.4 Solution a. The first bit is 0. This is a class A address. b. The first 2 bits are 1; the third bit is 0. This is a class C address. c. The first byte is 14; the class is A. d. The first byte is 252; the class is E.

183 19.183 Table 19.1 Number of blocks and block size in classful IPv4 addressing

184 Default masks for classful addressing Dotted-decimalBinaryClass 255.0.0.011111111 00000000 00000000 00000000A 255.255.0.011111111 11111111 00000000 00000000B 255.255.0.011111111 11111111 11111111 00000000C 19.184

185 19.185 Figure 19.5 hierarchy in telephone numbers

186 19.186 Figure 19.6 hierarchy in IP addressing

187 19.187 Each address in the block can be considered as a two-level hierarchical structure: the leftmost n bits (prefix) define the network; the rightmost 32 − n bits define the host. Note

188 19.188 Table 19.3 Addresses for private networks Home used wireless router usually uses 192.168.1.0/24 or 192.168.0.0/24 IP block

189 20.189 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

190 20.190 Figure 20.1 Links between two hosts

191 20.191 Figure 20.2 Network layer in an internetwork

192 20.192 Figure 20.3 Network layer at the source, router, and destination

193 20.193 Figure 20.3 Network layer at the source, router, and destination (continued)

194 Packet Switching Data transmitted in small packets –Typically less than 1500 bytes (why?) –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 William Stallings.. Data and Computer Communications, 7/E, Prentice Hall, 2004.

195 Use of Packets William Stallings.. Data and Computer Communications, 7/E, Prentice Hall, 2004.

196 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 William Stallings.. Data and Computer Communications, 7/E, Prentice Hall, 2004.

197 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 from missing packets William Stallings.. Data and Computer Communications, 7/E, Prentice Hall, 2004.

198 Datagram Diagram William Stallings.. Data and Computer Communications, 7/E, Prentice Hall, 2004.

199 Virtual Circuit Preplanned route established before any packets sent Call request and call accept packets establish connection (handshake) Each packet contains a virtual circuit identifier instead of destination address No routing decisions required for each packet Clear request to drop circuit Not a dedicated path William Stallings.. Data and Computer Communications, 7/E, Prentice Hall, 2004.

200 Virtual Circuit Diagram William Stallings.. Data and Computer Communications, 7/E, Prentice Hall, 2004.

201 Virtual Circuits v 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 William Stallings.. Data and Computer Communications, 7/E, Prentice Hall, 2004.

202 20.202 Switching at the network layer in the Internet uses the datagram approach to packet switching. Note

203 20.203 Communication at the network layer in the Internet is connectionless. Note

204 20.204 20-2 IPv4 The Internet Protocol version 4 (IPv4) is the delivery mechanism used by the TCP/IP protocols. Datagram Fragmentation Checksum Options Topics discussed in this section:

205 20.205 IPv4 is an unreliable and connectionless datagram protocol – a best effort delivery Best effort means that IPv4 provides no error control (except for error detection on the header) or flow control IPv4 does its best to get a transmission through to its destination, but with no guarantees Note

206 20.206 Figure 20.5 IPv4 datagram format

207 IPv4 Datagram Format Version (VER): version of the IP protocol. Currently, the version is 4. Header length (HLEN): the total length of the datagram header in 4-byte words. Services: service type or differentiated services (not used now). Total length: total length (header plus data) of the datagram in bytes. –Total length of data = total length – header length 20.207

208 IPv4 Datagram Format Identification: used in fragmentation (discussed later). Flags: used in fragmentation (discussed later). Fragmentation offset: used in fragmentation (discussed later). Time to live: it is used to control the maximum number hops visited by the datagram. Protocol: defines the higher-level protocol that uses the services of the IPV4 layer. 20.208

209 IPv4 Datagram Format Checksum: 1’s compliment checksum (introduced in Chapter 10). Source address: is the IPv4 address of the source. Destination address: is the IPv4 address of the source. 20.209

210 20.210 The total length field defines the total length of the datagram including the header. Note

211 20.211 Figure 20.7 Encapsulation of a small datagram in an Ethernet frame One of the reason why “total length” field is required.

212 20.212 Figure 20.8 Protocol field and encapsulated data

213 20.213 Table 20.4 Protocol values

214 20.214 An IPv4 packet has arrived with the first 8 bits as shown: 01000010 The receiver discards the packet. Why? Solution There is an error in this packet. The 4 leftmost bits (0100) show the version, which is correct. The next 4 bits (0010) show an invalid header length (2 × 4 = 8). The minimum number of bytes in the header must be 20. The packet has been corrupted in transmission. Example 20.1

215 20.215 In an IPv4 packet, the value of HLEN is 1000 in binary. How many bytes of options are being carried by this packet? Solution The HLEN value is 8, which means the total number of bytes in the header is 8 × 4, or 32 bytes. The first 20 bytes are the base header, the next 12 bytes are the options. Example 20.2

216 20.216 In an IPv4 packet, the value of HLEN is 5, and the value of the total length field is 0x0028. How many bytes of data are being carried by this packet? Solution The HLEN value is 5, which means the total number of bytes in the header is 5 × 4, or 20 bytes (no options). The total length is 40 bytes, which means the packet is carrying 20 bytes of data (40 − 20). Example 20.3

217 20.217 Figure 20.9 Maximum transfer unit (MTU)

218 20.218 Table 20.5 MTUs for some networks

219 Fields Related to Fragmentation Identification: identifies a datagram originating from the source host. A combination of the identification and source address must uniquely define a datagram as it leaves the source node. Flags: see next slide. Fragmentation offset: is the offset of the data in the original datagram measured in units of 8 bytes. 20.219

220 20.220 Figure 20.10 Flags (3 bits) used in fragmentation first bit: reserved (not used) second bit: = 1 requires the packet not to be fragmented drops the packet if it is > MTU third bit: =1 more fragmented packets later =0 the last fragmented packet

221 20.221 Figure 20.11 Fragmentation example

222 20.222

223 20.223 IPv4 checksum use the 1’s compliment method (chapter 10) Checksum only computes for IP header, not data Upper layer has checksum for data portion Header always changes in each router Header is chunked to 16-bit sections for computing IPv4 Checksum

224 20.224 Figure 20.13 Example of checksum calculation in IPv4

225 Chapter 22 Network Layer: Delivery, Forwarding, and Routing Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

226 Routing (IP routing) Routing Protocol: determines the best path (route) that the packets should follow to arrive to the desired destination Routing Protocols: A software in the network layer that implements routing algorithms and responsible for: –Filling and updating routing tables (by finding the shortest paths from each source to each destination) This part is called Routing –Deciding which output interface an incoming packet should be transmitted on (by referring to the routing table). This part is called Forwarding

227 Graph representation of a network Graph nodes are routers Graph edges are physical links –Each link has a value which represents the “cost” of sending a packet across the link –The cost is assigned based on a metric  Cost metric can be:  Number of networks (hops or routers)  Geographic distance  Link delay  Capacity (speed)  Reliability  Combination of the above How to select a “good” path??? –Good path is the one with minimum cost = Total cost from src to dest No de Ed ge Co st

228 Routing Algorithms Classifications Static –Routes change slowly over time –Shortest paths are precomputed offline by a special computer running the routing algorithm –Resulted information is entered manually by the administrator into the routing tables –Can not update automatically if there is a change in the network or failure –Used in small networks Dynamic (adaptive) –Each router or host learns the state of the network by communicating with its neighbours. –Based on the collected information, each node can fill its routing table –More complexity is added to the router

229

230 Network-Specific routing (Destination Network IP Address is listed in the table) Host Specific Routing ( Destination Host IP Address is listed in the table) Default Routing How to reduce number of entries in the routing table?

231 Figure 22.2 Route method versus next-hop method In next-hop routing, Routing table holds the information (IP address) that leads to the next hop (router) instead of holding information about the complete path

232 Figure 22.3 Host-specific versus network-specific method Instead of having entry for each host connected to the same network, the table contains only a single entry for the address of the network itself

233 Figure 22.4 Default method Default router is used if the destination network address is not found in the routing table

234 Shortest Path Routing  Algorithms used to determine the shortest path between two nodes according to some cost condition.  The shortest path is the path with the least cost (the sum of the cost of the links on the path is minimum over all possible paths between the source and destination)  Two main algorithms to find the shortest path between any two nodes  Distance Vector (Bellman-Ford Algorithm )  Link State – (Dijkstra’s Algorithm)

235 Distance Vector (DV) Routing  Basic idea: each network node maintains a Distance Vector (DV) table containing the distances from itself to ALL possible destination nodes.  Distances are based on a chosen metric (Metric: usually number of hops, bandwidth, delay)  Router transmits its distance vector table to each of its neighbors (directly connected to it) periodically (every 30 sec)  A router recalculates its distance vector when:  It receives a distance vector table from a neighbor containing different information than before.  It discovers that a link to a neighbor has gone down or up (i.e., a topology changes).  Distances to all destinations are computed using information from the neighbors’ distance vectors.  The DV calculation is based on minimizing the cost to each destination. From its DV, a router can directly derive its routing table.  Routing Information Protocol (RIP) is an example of distance vector protocols

236 Distance Vector Routing (a) A subnet. (b) Input from A, I, H, K, and the new routing table for J. 8 10 12 6 Distances from J to its direct neighbors

237 Distance vector routing table for J DestinationNext HopMetric AA8 BA20 CI28 DH20 EI17 FI30 GH18 HH12 II10 J-0 KK6 LK15

238 Link State Routing  Each router measures the cost (in delay, Bandwidth) between itself and its neighbour routers (directly connected)  The router builds a packet containing all these costs.  Each router distributes these packets using flooding to ALL other routers in the routing area  Information is sent when there a change in the link between the router and its neighbours (to reduce traffic)  Each router builds map of the entire network, uses a shortest-path algorithm (usually Dijkstra algorithm) to compute a shortest path between itself and any other node in the area (creates the routing table)  OSPF (Open Shortest Path first is an Example)

239 Comparison between distance vector & Link state Distance vector routing Each router Sends routing information to its neighbours The information sent is an estimate of the path cost to all known destinations in the area Information is sent periodically (every 30 s) by the router’s own timer React to link failure very slowly Link state routing Each router sends routing information to ALL routers in the area The information sent is the exact value of the links cost that connect the router to its neighbours Information is sent when there is a change React to network failure quickly

240 Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

241 23-1 PROCESS-TO-PROCESS DELIVERY The transport layer is responsible for process-to- process delivery—the delivery of a packet, part of a message, from one process to another. Two processes communicate in a client/server relationship, In Client/Server communication, four entities must be defined: Sending Node Local Host IP Local Process Port number Receiving Node Remote host IP Remote Process ID Port number

242 Position of UDP in the TCP/IP protocol suite

243 Nesting of TPDU, Packets, and Frames Transport Protocol Data Unit (TPDU) Term used for transport entity to transport entity messages TPDUs are contained in packets exchanged by network layer Packets are contained in frames exchanged by data link layer

244 Figure 23.1 Types of data deliveries

245 Transport layer duties  Packetizing  Sender side: breaks application messages into segments, passes them to network layer  Transport layer at the receiving host deliver data to the receiving process  Connection control  Connection-oriented  Connectionless  Addressing  Port numbers to identify which network application  Reliability  Flow control  Error Control  transport -end transport

246 The Internet Transport Layer The Internet supports two transport layer protocols: –The Transport Control Protocol (TCP) for reliable service –The Unreliable (User) Datagram Protocol (UDP)

247 Processes communicating across network  Process is an instance of a program in execution.  Processes on two hosts communicate with each other by sending and receiving messages  The process receives messages from, and sends messages into the network through its socket  A socket is the interface between the application layer and the transport layer within a host.  Sockets are the programming interface used to build network applications over the internet.  Programmers can select which transport layer protocol (UDP or TCP) to be used by the application and select few transport-layer parameters (maximum buffer size, Maximum segment size, starting sequence number of segment).

248 Port numbers Transport layer at the receiving host delivers data to the socket There should be a unique identifier for each socket. Socket identifier is called socket address Socket address = IP address & Port number

249 Figure 23.2 Port numbers

250 Figure 23.3 IP addresses versus port numbers Process-to-Process delivery needs IP address and Port number

251 Figure 22.4 IANA ranges Port numbers are 16-bit integers between 0 - 65535  Well-known: Assigned and controlled by Internet Assigned Numbers Authority IANA for example: FTP 20,21, TELNET 23, SMTP 25, HTTP 80

252 Table 23.1 Well-known ports used with UDP

253 Table 23.2 Well-known ports used by TCP

254 Figure 23.7 Error control Why we need error control at the transport layer?

255 Figure 22.6 Multiplexing and demultiplexing SenderReceiv er Multiplexing: (at the sending node) The process of encapsulating data messages from different applications sockets with the header information and pass the segments to the network layer DeMultiplexing: (at the receiving node) The process of delivering the received data segment to the correct application Example: Suppose that the following is running on the same computer: Downloading a web page while transferring data through FTP Two telnet sessions are also running Transport layer receives TPDUs from network layer for all four processes

256 23-3 Transmission Control Protocol (TCP) Transmission Control Protocol properties: –Connection-oriented (establishment & termination) –Reliable –Full-duplex

257 Connection-Oriented Connection oriented means that a virtual connection is established before any data is transferred. Connection ensures that the receiving process is available and ready before the data is sent Three-way handshaking connection establishment procedure because TCP is full-duplex both side must initialize communication and get approval from the other side before any data transfer, Virtual connection since TCP protocol will make sure that segments are given to the receiver application in the same order as they were sent by the sender even if they travel through different physical paths A server application that uses TCP can handle many client requests at the same time each has its own connection.

258 Connection establishment and termination Connection establishment Connection release Comb ined into one step

259 Figure 23.13 Stream delivery TCP establishes a virtual connection TCP will deliver segments to the applications in order and without error, lost, or duplicates

260 Full Duplex Data segments can flow in both directions at the same time. Each TCP connection has its own sending and receiving buffers.

261 Flow control and Reliability Flow control (process-to-process): TCP makes sure that the sender does not cause the receiver buffer to overflow –By defining the amount of data that can be sent before receiving an acknowledgement from the receiver (sliding – window protocols) Error control (process-to-process): entire message arrives at the receiving transport layer without error, loss, duplication and in the same order they were sent –Error detection is done using checksum and correction by retransmission –Implemented by a sliding window ARQ –Every transmission of data is acknowledged by the receiver. –Acknowledgements are cumulative. –If the sender does not receive ACK within a specified amount of time, the sender retransmits the data. –Accepts out of order but does Not send negative acknowledgements, –if a segment is not acknowledged before time-out, it is considered to be either corrupted or lost and the sender will retransmit the segment only when it times-out

262 TCP Applications Following applications require reliable data transfer through TCP: –WWW using HTTP –Electronic mail using SMTP –Telnet –File transfer using FTP

263 TCP Threeway Handshake Read P. 723 (starting @ “A TCP Connection”  end of P.724 Read P.727 (“Three Way Handshaking”).


Download ppt "Advantages of Computer Networks Enables users to share hardware like scanners and printers. This reduces costs by reducing the number of hardware items."

Similar presentations


Ads by Google