* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download MSc – CD4040 – Internet and Web Research Topics
IEEE 802.1aq wikipedia , lookup
Point-to-Point Protocol over Ethernet wikipedia , lookup
Distributed firewall wikipedia , lookup
Multiprotocol Label Switching wikipedia , lookup
Airborne Networking wikipedia , lookup
Network tap wikipedia , lookup
Asynchronous Transfer Mode wikipedia , lookup
Wireless security wikipedia , lookup
TCP congestion control wikipedia , lookup
Computer network wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Deep packet inspection wikipedia , lookup
Internet protocol suite wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
IEEE 802.11 wikipedia , lookup
Real-Time Messaging Protocol wikipedia , lookup
MSc WLAN, IP/TCP and COMM NETWORK Topics By Prof R A Carrasco School of Electrical ,Electronic and Computer Engineering University of Newcastle Upon Tyne [email protected] Ext: 7332 MSc WLAN, IP/TCP and COMM NETWORK References [1] Tanenbaum, Andrew S., Computer Networks, Fourth Edition ed: Pearson Education International, 2003, ISBN: 0-13-038488-7. [2] Comer, Douglas E, Computer Networks and Internets with Internet Applications, Third Edition ed: Prentice Hall, 2001, ISBN: 0-13-091449-5. [3] Peterson, Larry L. & Davie, Bruce S., Computer Networks, A Systems Approach: Morgan Kaufman Publishers, 2000, ISBN: 1-55860-577-0. [4] Halsall, Fred, Data Communications, Computer Networks and Open Systems: Adison-Wesley Publishing, 1995, ISBN: 0-201-42293-X Internet and Protocols • Advanced Research Projects Agency Network (ARPAnet), 1969. • The protocols in the TCP/IP suite either use transport control protocols (TCP) or user datagram protocol (UDP) as the transport protocol. • Low level functions such as File Transfer Protocol (FTP), the Internet Terminal Protocol (TELNET) and Electronic Mail (E-Mail), remote logon. • IP is responsible for moving packets of data from node to node. IP forwards each packet based on a four byte destination address (the IP number), different organisation, IP operates on a gateway machine. • TCP is responsible for verifying the correct delivery of data from client to server. TCP adds support to detect errors or lost data to trigger retransmission until the data is correctly and completely received. • Sockets is a name given to the package of subroutines that provide access to TCP/IP on most systems • The Internet Protocol was developed to create a Network of Networks (the Internet). Individual machines are first connected to a LAN (Ethernet or Token Ring). TCP/IP shares the LAN with other users. One device provides the TCP/IP connection between the LAN and the rest of the World. • A Network consisting of two or more far-apart LANs is a Wide Area Network (WAN) • Typical Network consisting of Switches, Hubs and Routers are intermediary devices between clients and servers The Network Layer in the Internet The Internet can be viewed as a collection of sub-networks or autonomous systems (AS) that are connected together There is not real structure, but several major backbones exist These are constructed from high-bandwidth lines and fast routers Attached to the backbones are regional networks, and attached to these regional networks are LANs (Universities, companies etc.) The glue that holds the Internet together is the network layer protocol, IP The Network Layer in the Internet The Internet transmits data by packet switching using a standardised Internet Protocol (IP) IP Datagram The header has a 20-byte fixed part and a variable length optional part It is transmitted in big edian order from left to right with higher-order bit of the version field going first Ethernet hub is a device for connecting multiple twisted pair or fibre Ethernet devices together. Ethernet bridge connects multiple network segments at the data link layer ( layer 2 ) of the OSI model. [2] D. E. Comer, "Computer Networks and Internets with Internet Applications," Prentice Hall, 2001, pp. 157-167. http://netbook.cs.purdue.edu/anmtions/anim09_2.htm A router is a computer networking device that forwards data across networks towards their destination, through a process known as routing. http://netbook.cs.purdue.edu/anmtions/anim09_3.htm Modem is a device that modulates an analogue carrier signal to encode digital information and also demodulate such a carrier signal to decode the transmitted information. Popular Wired LAN Standards High-Level Data Link Control (HDLC) Ethernet (IEEE 802.3) Token Bus (IEEE 802.4) Token Ring (IEEE 802.5) [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 234-243, pp. 16-26, pp. 271-291. HIGH LEVEL DATA LINK CONTROL [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 234-243. 8 01111110 8 address 8 >0 control Data 16 Checksum Frame format for bit-oriented protocols. 8 01111110 HIGH LEVEL DATA LINK CONTROL(2) (a) (b) (c) 1 3 1 3 0 Seq P/F Next 1 3 1 3 0 Type P/F Next 1 3 1 3 0 Type P/F Modifier Control Field of (a) An information frame (b) A supervisory frame (c) An unnumbered frame [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 234-243. PPP- Point to Point Protocol Bytes 1 1 1 Flag Address Control 01111110 11111111 1 or 2 Variable 2 or 4 1 Flag Protocol Payload checksum 00000011 The PPP full frame format for unnumbered mode operation 01111110 Ethernet (IEEE 802.3) Bus Topology Carrier Sense Multiple Access with Collision Detection (CSMA/CD) 10 Bases denoting 10 Mbit/s http://netbook.cs.purdue.edu/anmtions/anim06_1.htm Ethernet (IEEE 802.3) Tap Transceiver Drop cable MAC Unit Protocol Firmware Network Service Ethernet (IEEE 802.3) PR SFD DA SA TYPE INFORMATION FCS Data frame PR = Preamble SFD = Start Frame Data DA = Destination Address SA = Source Address TYPE = Type of data FCS = Frame Checksum CSMA/CD MAC Protocol Station checks if there is data being currently transmitted (carrier sense) If no data is present, station begins to transmit data http://netbook.cs.purdue.edu/anmtions/anim06_2.htm If two or more stations begin this process simultaneously, there will be a collision of frames Station monitors its own receiver output and compares with transmitted signal to detect when this occurs (collision detection) http://netbook.cs.purdue.edu/anmtions/anim06_5.htm CSMA/CD MAC Protocol If a collision is detected, the station aborts the transmission and sends a jamming signal to inform all other stations that a collision has occurred Transmitting stations that have caused the collision wait a randomly generated time interval before reattempting to transmit This avoids step-lock in terms of retransmission causing repeated collisions Capacity Calculations A B delay TX - A TX - B Time T = Transmitted frame length Capacity Calculations Time to transfer information Collision interval TX-A 2 TX-B Sensing time Time to detect collision a=/T The maximum propagation delay to frame length ratio The figure above allows a new frame to be transmitted immediately following the previous one, giving a frame rate of 1/T frames/sec Capacity Calculations If, on average K retries are necessary before the next frame can be transmitted (in a lightly loaded network k=0), then the average time for transmitting one frame, tv, is given by: tv = T + + 2K = T + (1 + 2K) = T [1 + /T(1 +2K)] = T[1 + a(1+2K)] Where a=/T Capacity Calculations The utilisation factor, U, of the transmission medium is given by: U = T/tv = 1/(1+a(1+2k)) Let Pt be the probability constant for all stations over all time that any particular station wishes to transmit at the end of a specific 2 collision detection interval Pt = 2 λ ,(where λ is the rate of packets/s) Capacity Calculations For a successful event, one station transmits, but n-1 stations do not The probability of n successful transmissions p is therefore given by: p = nPt(1 - Pt)n-1 It can be shown by differentiating p with respect to Pt that the maximum value of the probability Pt is: Pt = 1/n Where n is the number of stations Capacity Calculations Consequently the maximum value of p is given by: pmax= n 1/n(1 – 1/n)n-1 = (1 – 1/n) n-1 If n→∞ then pmax → 1/e where e = 2.718… At the end of a 2 collision detection interval, a further collision occurs with probability 1-p, while a successful transmission occurs with probability P Thus, a sequence of K collision intervals occupying a time 2K sec, occurs with probability: P (k) = p(1-p)K-1 at least one collision occurring Capacity Calculations The average number of collisions is therefore given by: k= Σk=1 kp(k) = Σk=1 kp(1-p) k-1 From this it can be proven that k=1/p, and we obtain the limiting utilisation: U = T/tv = 1/(1+a(1+2k)) Umax = 1 / (1+a(1+22.718)) = 1/(1+6.44a) Utilisation with different values for the a parameter Max Utilisation for different values of Max Utilisation 1 0.8 0.6 0.4 0.2 0 0 0.2 parameter 0.4 a a Ethernet OPNET Simulation Ethernet with 30 nodes is connected via coaxial link in a bus topology The bus is operating at 10Mbps collision detection interval 2=51.2µsec, data frame length =1024 bytes Network Snapshot Utilization vs. Traffic Load Ethernet Exercises Problem: A certain Ethernet system has a maximum bus delay of 16 μsec, and operates with a bit rate of 10 Mbit/sec. Each frame is 576 bits in length. Determine the maximum utilisation factor of the medium under collision conditions For the system above, calculate the actual capacity if there are 15 active stations, each with an equal amount of data to transmit Token Ring (IEEE 802.5) Ring Structure SD AC FC DA SA INFORMATION FCS ED FS Data frame SD AC ED http://netbook.cs.purdue.edu/anmtions/anim06_4.htm Token frame Token Ring Frame Structures SD = Start Delimited (1 octet) AC = Access Control (1 octet) FC = Frame Control (1 octet) DA = Destination Address (2/6) FCS = Frame Check (4) ED = End Delimiter (1) FS = Frame Status (1) Token Ring Trunk Coupling Unit (TCU) Ring cable Drop cable MAC Unit Protocol Firmware Network Service Token Ring D D Free Token C A C A B B D D A removes the data frame A C A C A generates data frame for station A Busy Token B Free Token B Capacity Calculations Empty Ring C = Capacity (bits/sec) = Propagation time around ring N = Number of stations L = Delay of L bits in each station on the ring (station latency) Capacity Calculations The ring latency is given by: TL = + (NL)/C The free token is 24 bits (3 bytes) in length, thus the maximum waiting time, if no other station is transmitting, is given by: Tmax,empty = (24/C + TL) Capacity Calculations Full Ring Consider a full ring, where all stations have data to transmit Each station can only transmit when it has the token If each frame is limited to M bytes, the transmission time is: T = 8M/C The maximum waiting time is: Tmax, Full = (N-1)(T+TL) Capacity Calculations Exercise A 4Mbit/s ring has 50 stations, each with a latency of 2 bits, the total length of the ring is 2km, and the propagation delay of the cable is 5μs/km Determine the maximum waiting time when the ring is empty, and when all stations are transmitting. A full frame is 64 bytes in length Capacity Calculations Loaded Ring Traffic load of λi frame/sec T = Time when transmitted on the ring for each frame Tc = time interval elapsed before the free token arrives ti = λiTcT Capacity Calculations The maximum waiting time experienced by every station on the ring Tc is given by: Tc = TL + ΣNi=1 ti = TL + tc ΛT Where Λ = ΣNi=1 λi Here the parameter Λ represents the gross input to the ring in frame/sec Tc/TL = 1 / (1-U) and U = ΛT Token Ring OPNET Simulation Token Ring Parameters Single Station Only one station has data to transmit MSDU size = 1024 bytes Test under different Token Holding Timer (THT) values, which specifies the maximum amount of time a token ring MAC may use the token before releasing it. Utilization vs. THT Duration Full Ring All stations have data to transmit Each station can only transmit when it has the token MSDU size = 1024 bytes Utilization vs. THT Duration Tutorial: Network Systems and Technologies by Professor R. A. Carrasco 1) a) b) Describe the basic differences between a wide area network and a local area network in terms of: Structure Operation 2) The techniques of passing information from node to node across a broadcast network differ according to the type of configuration employed. Compare the methods used for bus and ring networks. 3) a) What is a baseband LAN? What is a broadband LAN? b) What are the advantages of using a star ring architecture in a computer network? What are its disadvantages? 4) Describe the effects of a complete failure of a node in the operation of the following network configurations: a bus a ring a star 5) List the seven layers of the CCITT ISO architecture for network communications. a) Describe their function and justify the existence of each one. b) Which layers are essential to LAN communications and why? 6) Assuming HDLC protocol a) Distinguish between the normal response mode and the asynchronous mode of working. How are they defined in the HDLC frame structure? b) How is flow control achieved through this frame structure? 7) Describe the function of the logical link control and medium access control layers as defined in the IEEE 802 standards and indicate their relationship with the lower protocol layers in the ISO seven-layer reference model. 8) a) Describe the basic differences between circuit switching, message switching and packet switching. b) Give examples of each switching technique. Advantages and disadvantages of switching techniques. c) For packet switching technique: give an example. How will the network handle stream of packets? 9) i) Discuss IEEE 802 standards and frame format for CSMA/CD, token bus, token ring, 802.2 (logical link control), 802.3, 802.4 and 802.5 standards. ii) Briefly discuss the comparison of 802.3, 802.4 and 802.5 standards. 10) Imagine two LAN bridges, both connecting a pair of 802.4 networks. The first bridge is faced with 1000 512-byte frames per second that must be forwarded. The second is faced with 200 4096-byte frames per second. Which bridge do you think will need the faster CPU? Discuss. 11) Suppose that the two bridges of the previous problem each connected an 802.4 LAN to an 802.5 LAN. Would that change have any influence on the previous answer? 12) A bridge between an 802.3 LAN and an 802.4 LAN has a problem with intermittent memory errors. Can this problem cause undetected errors with transmitted frames, or will these all be caught by the frame checksums? 13) A large FDDI ring has 100 stations and a token rotation time of 40 msec. The token holding time is 10 msec. What is the maximum achievable efficiency of the ring? [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 26-49. • The Internet uses almost exclusively TCP for layer 4 and IP for layer 3 Clients and servers typically implement all of the seven OSI layers whilst hubs and switches are only aware of MAC addresses Routers are aware of network address (IP addresses), a layer 3 switch is really a fast router • Routing protocols differ from routed protocols since they dynamically determine routing and the route taken by one packet can be different to that of another packet taking place in the same transaction. • Transmission Control Protocol (TCP) is a transport layer protocol layered on top of IP and below the application layer SMTP, Telnet, FTP, HTTP(web) etc. Transmission Control Protocol (TCP) (RFC 793) • Van Jacobson’s algorithm • Karn’s algorithm • Nagle’s Algorithm IEEE 802.x, TCP/IP and ISO/OSI Architecture Comparison TCP/IP ISO/OSI Application Application Presentation Session Transport IEEE 802.x Network (IP) IEEE 802.2 Ethernet IEEE 802.3 IEEE 802.4 IEEE 802.5 IEEE 802.6 Transport Network Data Link Physical [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 431-449. IP The IP is the internetworking protocol that offers a service with the following characteristics: It is connectionless, so units of network layer data protocol ,denominated datagram in the IP context, are dealt with in an individual way from the source host up to the destination host It is not reliable. The data-grams can be lost, duplicated, or disordered, and the network does not detect or report this problem http://netbook.cs.purdue.edu/anmtions/anim17_1.htm [1] A. S. Tanenbaum, "Computer Networks," Pearson Education, 2003, pp. 431-448. IP OPNET Simulation IP Cloud Model: Packet Discard Ratio: 1.0% Packet Latency (secs): Exponential (0.5) Results IP Header format The version field keeps track of which version of the protocol the datagram belongs to. Hlen is provided to tell how long the header is in 32-bit words The type of service field allows the host to tell the subnet what kind of service it wants. Various combinations of reliability and speed are possible. The three flag bits allow the host to specify what it cares most about from the net [delay, throughput, reliability] The total length includes everything in the datagram – both header and data IP Header Format The identification field is needed to allow the destination host to determine which datagram a newly arrived fragment belongs to. All the fragments of a datagram contain the same identification value DF = Don’t Fragment MF = More Fragment The fragment offset tells where in the current datagram this fragment belongs The time to live field is a counter used to limit packet lifetimes The protocol field tells it which transport process to give it to, TCP, UDP and some others IP Header Format The header checksum verifies the header only. Checksum is useful to detecting errors generated by bad memory words inside a router The source address and destination address indicate the network number and host numbers The option field was designed to provide an escape to allow subsequent version of the protocol to include information not present in the original design Option Description Security Specifies how secret the datagram is Strict source routing Gives the complete path to be followed Loose source routing Record route Timestamp Gives a list of routers not to be missed Makes each router append its IP address Makes each router append its address and timestamp Fragmentation The IP-level datagram must be encapsulated in a lower network level packet to travel in the network The rules for the fragmentation are as follows: The size of the resulting fragments must be a multiple of an octet so that the data displacement records, offset, within the datagram are done correctly The size of the fragments are freely chosen The gateway must accept datagram with a greater size than that of the network they are connected to. This is so larger datagram can be admitted to the network The host and gateways must handle datagram larger than 576 octets [2] D. E. Comer, "Computer Networks and Internets with Internet Applications," Prentice Hall, 2001, pp. 283-297. http://netbook.cs.purdue.edu/anmtions/anim16_1.htm ARP Address Resolution Protocol The IP packet are sent encapsulated in LAN or WAN frame such as Ethernet, token ring or ATM Q. How does the host needs to know the correct Ethernet destination address to put in the frame? EtherDes EtherSour length IP header Payload A. It uses ARP to map from the IP destination address to the Ethernet destination address [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 450-452. http://netbook.cs.purdue.edu/anmtions/anim15_1.htm ARP cont The host broadcasts an APR request packet which contains the IP address of the required station The station which has that IP address replies directly (unicast) returning the correct IP address Now the IP packet can be sent directly to the correct Ethernet address Reverse Address Resolution Protocol (RARP) Allows a station to determine its IP address from its hardware address A server can be configured to respond to RARP request automatically allocating IP address across the network Not used much nowadays, replaced instead by more powerful auto configuration protocols such as DHCP (Dynamic Host Configuration Protocol) [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 453-454. Dynamic Host Configuration Protocol DHCP Allows a client to be configured automatically over the network. Means that machines do not have to have configured by hand New machines can be added to the IP network more easily Less chance of error (for example duplicate IP addresses being configured) Domain Name Service DNS IP addresses are very difficult to remember DNS translates easier to remember text names www.soc.ncl.ac.uk into IP address 128.10.20.30 When a host requires a domain name translation it makes the request to its local Domain Name Server [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 579-588,. Domain Naming Each name in DNS can be split up a series of domains E.g. www.soc.ncl.ac.uk uk=domain of the UK ac.uk= academic domain within the UK ncl.ac.uk=Newcastle University domain within UK academic soc.ncl.ac.uk School of computing domain within Newcastle University within UK academic Domain Name Servers Each domain name server is responsible domain The first request will go to the server which is the local machine domain DNS server can react in 3 different way -DIRECT just send back the correct IP address -RECURSIVE if it doesn’t know the IP address make a request to another DNS server for the IP address then send back the IP address -INDIRECT send back the IP address of another DNS server The change from IPv4 to IPv6 falls primarily into the following categories: • Expanded Addressing Capabilities IP address size from 32 bits to 128 • Header format simplification • Improved support for extensions and options • Flow labelling capability •Authentication and privacy capabilities IPv6 extension headers [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 464-473. [2] D. E. Comer, "Computer Networks and Internets with Internet Applications," Prentice Hall, 2001, pp. 339-348. Order of extension headers for IPv6 Option header formats Hop-by-hop extension IPv6 options header Routing Extension IPv6 header Routing type 0 header Fragment extension IPv6 header TCP and UDP “pseudo-header” for IPv6 TCP Transmission Control Protocol Services -Guarantees end to end delivering of packets -Control the flow of data from host to host and host into the network -Multiplexing, the TCP header has a port number which is used to determine which application should receive the packet http://netbook.cs.purdue.edu/anmtions/anim20_1.htm [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 41-49. TCP Datagram Format, RFC 793 [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 532-553. TCP Client Ports Q. If you have a computer running an e-mail package, 2 web browsers (e.g. Netscape and IE) how does the compute know when a TCP/IP packet arrives which application should receive the packet? A. Each application sets up its connection using a different port number, when the replies come back from the server the port number is used to send the packet to the current connection. TCP SERVER PORTS The server must respond to client requests Q. How does the client know which port to send its request to? A. “Well known port numbers” are assigned to particular services TCP Error control The acknowledgment (ack) and sequence number fields are used to guarantee delivery of packets to the destination For each packet sent out an ack must be sent back. If no ack is sent back within a certain time the packet is sent again. Each new packet to be transmitted is allocated a new sequence no. the returning ack no. informs the sender of the next expected sequence no. The sequence no. is used to keep the packets in order http://netbook.cs.purdue.edu/anmtions/anim20_5.htm TCP flow control The window size field is used by the receiver to control the flow of packets from the sender. http://netbook.cs.purdue.edu/anmtions/anim20_3.htm If the receiver sets the window size to 400 the sender is only allowed to send 400 bytes before stopping. The receiver can stop the sender by setting the window size to 0 http://netbook.cs.purdue.edu/anmtions/anim20_3.htm TCP congestion control TCP uses a slow start algorithm to initially limit a new connection’s bandwidth. This is so that the connection does not overload the network infrastructure TCP increases the flow of data into the network until an ack timeout occurs it will then cut back TCP OPNET Simulation A packet loss A packet loss TCP Tahoe TCP Reno (Fast recovery) UDP User Datagram Protocol Services -provides port allocations the same as TCP -does NOT guarantee delivery -does not guarantee sequencing -useful when speed is more important than reliability e.g. Internet telephony [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp. 524-532. User Datagram Protocol (UDP), RFC 768 • Source Port Destination Port Length Field The Checksum • Internet Protocol IP RFC 791, RFC 792, RFC 826 IPv4, IPv6 Applications of UDP Appropriate when - transport layer overhead must be minimized or - data reliability is not crucial - Services such as NFS, DNS, SNMP and Voice over IP (VoIP) use UDP Sockets Applications Socket references UDP sockets TCP sockets Sockets bound to ports TCP ports 1 2 1 65535 2 65535 UDP ports UDP TCP IP A socket allows applications to send and receive data. It allows an application to connect to a network and communicate with other applications on that network Stream sockets use TCP as the end-to-end protocol with IP underneath Datagram sockets use UDP end-to-end with IP underneath A TCP/IP socket is uniquely identified by an Internet address, type of protocol and a port number Relationship of Socket Classes .NET Framework Classes TcpListener TcpClient Class UdpClient Class Socket Class Underlying Implementation WinSock 2.0 Implementation WinSock was developed by Microsoft and provides standard socket functions. The .NET framework provides higher level classes to simplify programming tasks. The .NET socket class allows access to the underlying sockets interface. TcpListener, TcpClient and UdpClient are higher level .NET socket classes that are implemented using the .NET Socket wrapper class. TCP Sockets The .NET framework provides two classes for TCP: TcpClient and TcpListener .NET uses the EndPoint class and IPEndPoint subclass to represent the TCP channel. Communication with a TCP client is initiated in three steps: 1. Construct an instance of TcpClient Communicate using the socket’s stream Close the connection 2. 3. TCP Client and Echo server in C# 0. using System; //For string, Int32, Console, ArgumentException 1. using System.text; //For Encoding 2. using System.IO; //For IOException 3. using System.Net.Sockets //For TcpClient, NetworkStream, SocketException 4. 5. class TcpEchoClient{ 6. 7. static void Main(string[] args){ 8. 9. if ((args.Length < 2) || (args.Length > 3)) { // Test for correct no of args 10. throw new ArgumentException(“Parameters: <Server> <Word> [<Port>]”); 11. } 12. 13. String server = args[0]; // Server name or IP address 14. 15.// Convert input String to bytes 16. byte[] byteBuffer = Encoding.ASCII.Getbytes(args[1]); 17. 18. //Use port argument if supplied, otherwise default to 7 19. Int servPort = (args.Length == 3) ? Int32.Parse(args[2]) : 7; 20. TCP Client and Echo server in C# 21. TcpClient client = null; 22. NetworkStream netStream = null; 23. 24. try{ 25. // Create socket that is connected to server on specified port 26. client = new TcpClient(server, servPort); 27. 28. Console.WriteLine(“Connected to server… sending echo string”); 29. 30. netStream = client.GetStream(); 31. 32. // Send the encoded string to the server 33. netStream.Write(byteBuffer, 0, byteBuffer.Length); 34. 35. Console.WriteLine(“Sent {0} bytes to server…”, byteBuffer.Length); 36. 37. int totalBytesRcvd = 0; // Total bytes received so far 38. int bytesRcvd = 0; // Bytes received in last read 39. TCP Client and Echo server in C# 40. //Receive the same string back from the server 41. while(totalBytesRcvd < byteBuffer.Length){ 42. if((bytesRcvd = netStream.Read(byteBuffer, totalBytesRcvd, byteBuffer.Length – totalBytesRcvd)) == 0){ 43. Console.WriteLine(“Connection closed prematurely.”); 45. break; 46. } 47. totalBytesRcvd += bytesRcvd; 48. } 49. 50. Console.WriteLine(“Received {0} bytes from server: {1}”, totalBytesRcvd, 51. Encoding.ASCII.Getstring(byteBuffer, 0, totalBytesRcvd)); 52. 53. } catch (Exception e){ 54. Console.WriteLine(e.Message); 55. } finally { 56. netStream.Close(); 57. client.Close(); 58. } 59. } 60.} TCP Client and Echo server in C# Lines 15-16 convert the echo string to bytes Line 19 finds the echo server port Lines 25-26 create the TCP socket Line 30 gets the socket stream Lines 32-33 send the string to the echo server Line 40-48 receive the reply from the echo server Lines 50-51 print the echoed string Lines 53-54 handle errors Lines 55-58 close the stream and socket UDP Sockets The .NET framework provides UDP sockets functionality using the class UdpClient. This allows for both sending and receiving UDP packets, and can be used to construct a UDP client and server. The UDP client works in the following way: 1. Construct an instance of UdpClient 2. Communicate using the Send() and Receive() methods of UdpClient 3. Use the Close() method of UdpClient to deallocate the socket. UDP Client and Echo Server in C# 0. using System; //For String, Int32, Console 1. using System.Text; //For Encoding 2. using System.Net; //For IPEndPoint 3. using System.Net.Sockets //For UdpClient, SocketException 4. 5. class UdpEchoClient { 6. 7. static void Main(string[] args) { 8. 9. if((args.Length < 2) || (args.Length > 3)) { // Test for correct no of args 10. throw new System.ArgumentException(“Parameters: <Server> <Word> [<Port>]”); 11. } 12. 13. String server = args[0]; // Server name or IP address 14. 15. // Use port argument if supplied, otherwise default to 7 16. int servPort = (args.Length == 3) ? Int32.Parse(args[2]) : 7; 17. 18. // Convert input String to an array of bytes 19. byte[] sendPacket = Encoding.ASCII.GetBytes(args[1]); 20. 21. // Create a UdpClient instance 22. UdpClient client = new UdpClient(); UDP Client and Echo Server in C# 23 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. try { // Send the echo string to the specified host and port client.Send(sendPacket, sendPacket.Length, server, servPort); Console.WriteLine(“Sent {0} bytes to the server…”, sendPacket.Length); // This IPEndPoint instance will be populated with the remote sender’s endpoint information after the Receive() call IPEndPoint remoteIPEndPoint = new IPEndPoint(IPAddress.Any, 0); // Attempt echo reply receive byte[] rcvPacket = client.Receive(ref remoteIPEndPoint); Console.Writeline(“Received {0} bytes from {1}: {2}”, rcvPacket.Length, remoteIPEndPoint, Encoding.ASCII.Getstring(rcvPacket, 0, rcvPacket.Length)); 37. 38. } catch (SocketException se) { 39. Console.WriteLine(se.ErrorCode + “: “ + se.Message); 40. } 41. 42. client.Close(); 43. } 44. } UDP Client and Echo Server in C# Lines 21-22 create the UDP socket Lines 24-25 send the datagram Lines 29-30 create a remote IP end point for receiving Lines 32-33 handle datagram reception Lines 35-36 print reception results Line 42 closes the socket Voice over IP (VoIP) VoIP is the routing of voice signals over an IP-based network. The analogue voice signal is converted to a digital signal. The digital signal is compressed using a codec (G.7xxx for voice, H.26xx for video) The digital signal is then split into packets by a process called Packetization Voice over IP (VoIP) Advantages: Incoming calls can be routed to a VoIP phone anywhere on the network Lower cost especially for international calls Disadvantages: Received IP packets can arrive in any order or even be missing resulting in poor QoS. Susceptible to power cuts Voice over IP Protocols Audio/Video Applications RTSP ENUM H.323 SIP Codecs G.xxx, H.26x MEGACO/ H.248 DNS RTP SDP RTCP UDP TCP IP Network Interface Layer Protocols SAP MGCP RSVP Protocols supporting VoIP Multicast IP Real-Time Transport Protocol (RTP) Real-Time Control Protocol (RTCP) Resource Reservation Protocol (RSVP) Real-Time Streaming Protocol (RTSP) Session Description Protocol (SDP) Session Initiation Protocol (SIP) Electronic Numbers (ENUM) Protocols supporting VoIP Multicast IP efficiently sends data to multiple receivers at the same time on TCP/IP networks. RTP provides end-to-end delivery services for data that requires realtime support. RTCP monitors the QoS and conveys information about each user in the communication session. RSVP requests an appropriate level of service from the network. RTSP controls the delivery of data that has real-time properties. SDP describes a multimedia session for the purposes of session announcement and invitation. Protocols supporting VoIP SIP establishes a communication session between two end-points. It creates, modifies and terminates sessions between participants. ENUM bridges the gap between telephone numbers and IP addresses. Real-Time Transport Protocol (RTP) 1111111111222222222233 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Bits V=2 P X CC M Sequence Number PT Timestamp Synchronisation Source (SSRC) Identifier Contributing Source (CSRC) Identifier (0 to 15 items) 20 ms Voice Sample V = Version (currently 2) CC = CSRC Count. Counts the number of CSRC identifiers in the RTP header CSRC – Identifies contributing sources (conferencing) in the payload. There can only be a maximum of 15 contributing sources. These are inserted by a mixer. SSRC – Identifies synchronisation sources. It is chosen randomly so that two or more synchronisation sources in the same RTP session have the same SSRC identifier. Voice over IP Packet Format 1111111111222222222233 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 Bits VER IHL Type of service Total Length Flags Identifier Fragment Offset Header Checksum Protocol Time to live Source Address Destination Address Options + Padding Source Port Length V=2 PX CC M Destination Port Checksum IPv4 Header 20 octets + Options + Padding UDP Header 8 Octets Sequence Number PT Timestamp Synchronisation Source (SSRC) Identifier Contributing Source (CSRC) Identifier (0 – 15 items) 20 ms Voice Sample RTP Header 12 octets + Identifiers Data 20 octets References “TCP/IP Illustrated, Volume 1, The Protocols”, W. Richard Stevens, Addison-Wesley Professional Computing Series, 1994 “TCP/IP Sockets in C#, Practical Guide for Programmers”, David B. Makofske, Michael J. Donahoo, Kenneth L. Calvert, The Practical Guide Series, Elsevier, 2004 “Voice over IP Technologies, Building the Converged Network”, Mark A. Miller, M&T Books, 2002 Tutorial Sheet: Network Systems and Technologies by Prof R. A. Carrasco 1) What is the principal difference between connectionless communication and connection-oriented communication? 2) Two networks each provide reliable connection-oriented service. One of them offers a reliable byte stream and the other offers a reliable message stream. Are these identical? If so, why is the distinction mode? If not, give an example of how they differ. 3) What are two reasons for using layered protocols? 4) Give two example applications for which connection-oriented service is appropriate. Now give two examples for which connectionless service is best. 5) Are there any circumstances when a virtual circuit service will (or at least should) deliver packets out of order? Explain. 6) Datagram subnets route each packet as a separate unit, independent of all others. Virtual circuit subnets do not have to do this, since each data packet follows a predetermined route. Does this observation mean that virtual circuit subnets do not need the capability to route isolated packets from an arbitrary source to an arbitrary destination? Explain your answer. 7) What does ‘negotiation’ mean when discussing network protocols? Give an example of it. 8) 9) Give three examples of protocol parameters that might be negotiated when a connection is set up. Discuss the advantages and disadvantages of message switching over circuit switching and performance comparison. 10) Discuss the advantages/disadvantages of packet switching over circuit switching (and performance comparison) 11) Discuss the characteristics and medium access control techniques of Broadcast Networks. 12) Describe the routing functions attributes and their elements. 13) Describe the following routing strategies: Fixed Routing Flooding Random Routing Adaptive Routing Wireless LANs Advantages Increased mobility of users Increased flexibility and fluidity, including ad-hoc networks Instant networking Availability of LAN technology [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp.292-302. Wireless LANs Disadvantages Higher Cost Lower Performance Lower Reliability (Variable Channel Characteristics) Multiple Standards Poor Inherent Security LAN Design IEEE 802.11 Wireless LAN Draft Standard Professor R. A. Carrasco [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp.292-317. Introduction IEEE 802.11 Draft 5.0 is a draft standard for Wireless Local Area Network (WLAN) communication. This tutorial is intended to describe the relationship between 802.11 and other LANs, and to describe some of the details of its operation. It is assumed that the audience is familiar with serial data communications, the use of LANs and has some knowledge of radios. 802.11 Data Frame Bytes 2 Frame Control Bits 2 6 6 6 6 2 Duration Address 1 Address 2 Address 3 Seq Address 4 2 2 4 Version Type Subtype 1 1 1 To From MF DS DS 1 1 RePwr More W try O 1 1 1 0-2312 4 Data Checksum Frame Control Contents Glossary of 802.11 Wireless Terms Overview 802.11 Media Access Control (MAC) Frequency Hopping and Direct Sequence Spread Spectrum Techniques 802.11 Physical Layer (PHY) Security Performance Inter Access Point Protocol Implementation Support Raytheon Implementation Glossary of 802.11 Wireless Terms Station (STA): A computer or device with a wireless network interface. Access Point (AP): Device used to bridge the wireless-wired boundary, or to increase distance as a wireless packet repeater. Ad Hoc Network: A temporary one made up of stations in mutual range. Infrastructure Network: One with one or more Access Points. Channel: A radio frequency band, or Infrared, used for shared communication. Basic Service Set (BSS): A set of stations communicating wirelessly on the same channel in the same area, Ad Hoc or Infrastructure. Extended Service Set (ESS): A set BSSs and wired LANs with Access Points that appear as a single logical BSS. Glossary of 802.11 Wireless Terms, cont. BSSID & ESSID: Data fields identifying a stations BSS & ESS. Clear Channel Assessment (CCA): A station function used to determine when it is OK to transmit. Association: A function that maps a station to an Access Point. MAC Service Data Unit (MSDU): Data Frame passed between user & MAC. MAC Protocol Data Unit (MPDU): Data Frame passed between MAC & PHY. PLCP Packet (PLCP_PDU): Data Packet passed from PHY to PHY over the Wireless Medium. Overview, IEEE 802, and 802.11 Working Group IEEE Project 802 charter: Local & Metropolitan Area Networks 1Mb/s to 100Mb/s and higher 2 lower layers of 7 Layer OSI Reference Model IEEE 802.11 Working Group scope: Wireless connectivity for fixed, portable and moving stations within a limited area Appear to higher layers (LLC) the same as existing 802 standards Transparent support of mobility (mobility across router ports is being address by a higher layer committee) Overview, IEEE 802.11 Committee Committee formed in 1990 Wide attendance Multiple Physical Layers Frequency Hopping Spread Spectrum Direct Sequence Spread Spectrum Infrared 2.4GHz Industrial, Scientific & Medical shared unlicensed band 2.4 to 2.4835GHz with FCC transmitted power limits 2Mb/s & 1Mb/s data transfer 50 to 200 feet radius wireless coverage Draft 5.0 Letter Ballot passed and forwarded to Sponsor Ballot Published Standard anticipated 1997 Next 802.11 - November 11-14, Vancouver, BC Chairman - Victor Hayes, [email protected] Overview, 802.11 Architecture ESS Existing Wired LAN AP STA BSS AP STA STA BSS STA Infrastructure Network STA Ad Hoc Network STA BSS BSS STA STA Ad Hoc Network Overview, Wired vs. Wireless LANs 802.3 (Ethernet) uses CSMA/CD, Carrier Sense Multiple Access with 100% Collision Detect for reliable data transfer 802.11 has CSMA/CA (Collision Avoidance) Large differences in signal strengths Collisions can only be inferred afterward Transmitters fail to get a response Receivers see corrupted data through a CRC error 802.11 Media Access Control Carrier Sense: Listen before talking Handshaking to infer collisions DATA-ACK packets Collision Avoidance RTS-CTS-DATA-ACK to request the medium Duration information in each packet Random Backoff after collision is determined Net Allocation Vector (NAV) to reserve bandwidth Hidden Nodes use CTS duration information 802.11 Media Access Control, cont. Fragmentation Bit Error Rate (BER) goes up with distance and decreases the probability of successfully transmitting long frames MSDUs given to MAC can be broken up into smaller MPDUs given to PHY, each with a sequence number for reassembly Can increase range by allowing operation at higher BER Lessens the impact of collisions • Trade overhead for overhead of RTS-CTS • Less impact from Hidden Nodes 802.11 Media Access Control, cont Beacons used convey network parameters such as hop sequence Probe Requests and Responses used to join a network Power Savings Mode Frames stored at Access Point or Stations for sleeping Stations Traffic Indication Map (TIM) in Frames alerts awaking Stations 802.11 Protocol Stack Upper Layers Logical Link Control Data Link Layer MAC Sublayer 802.11 Infrared 802.11 FHSS 802.11 DSSS 802.11a OFDM 802.11b HR-DSSS 802.11g OFDM Physical Layer Performance of IEEE802.11b ttr MAC Header 30 Bytes CRC 4 Bytes Data MPDU tcont DIFS Backoff t pr PLCP Preamble PLCP Header MPDU 10 sec t pr SIFS PLCP Preamble t ack Header 50 sec Ack 14 Bytes Performance of IEEE802.11b Successful transmission of a single frame PLCP = physical layer convergence protocol preamble t pr Header transmission time (varies according to the bit rate used by the host SIFS = 10 sec (Short Inter Frame Space) is the MAC acknowledgement transmission time (10 sec if the selected rate is 11Mb/sec, as the ACK length is 112 bits Performance of IEEE802.11b ttr DIFS = 50 sec = is the frame transmission time, when it transmits at 1Mb/s, the long PLCP header is used and t pr = 192 sec If it uses 2, 5.5 or 11 Mb/s, then the short PLCP header can be optionally used t pr = 96 sec Performance of IEEE802.11b For bit rates greater than 1Mb/s and the frame size of 1500 Bytes of data (MPDU of total 1534 Bytes), proportion p of the useful throughput measured above the MAC layer will be: ttr 1500 P 0.70 T 1534 So, a single host sending long frames over a 11Mb/s radio channel will have a maximum useful throughput of 7.74Mb/s Performance of IEEE802.11b If we neglect propagation time, the overall transmission time is composed of the transmission time and a constant overhead T ttr tov Where the constant overhead tov DIFS t pr SIFS t pr tack Performance of IEEE802.11b For N hosts, assuming that multiple successive collisions are negligible, the proportion of collisions experienced for each packet successfully acknowledged at the MAC is given by: Pc ( N ) 1 (1 1 / CWmin ) N 1 Performance of IEEE802.11b The overall frame transmission time experienced by a single host when competing with N – 1 other hosts has to be increased by time interval tcont that accounts for the time spent in contention procedures Performance of IEEE802.11b N stations, mean wait interval per transmission SLOT CWmin 1 2 N Backoff interval is doubled when a collision occurs CWmin CWmin tcont ( N ) SLOT (1 Pc ( N )) Pc ( N ) 2 N N 1 Pc ( N ) SLOT CWmin 2N Performance of IEEE802.11b So the overall transmission time T ( N ) ttr tov tcont ( N ) proportion p of the useful throughput measured obtained by a host: p( N ) ttr / T ( N ) Performance Anomaly of IEEE802.11b Consider how the situation in which N hosts of different bit rate compete for the radio channel. N-1 hosts use the high transmission rate R = 11Mb/s and one host transmits at a degraded rate r = 5.5, 2, or 1Mb/s Sd Sd Ttr or Ttr R r Where Sd is the data frame length in bits Performance Anomaly of IEEE802.11b Let Tf be the overall transmission time for a “fast” host transmitting at rate R T f tovf Sd tcont R Similarly, let Ts be the corresponding time for a “slow” host transmitting at rate r s Ts tov Sd tcont r s tovf and tov the associated overhead time Performance Anomaly of IEEE802.11b We can express the channel utilization of the “fast” host as Tf Uf ( N 1)T f Ts Pc ( N ) t jam N where 2 2 t jam Ts (1 )T f N N The throughput obtained by a “fast” host is given by: Sd X f U f Tf Performance Anomaly of IEEE802.11b Similarly, we can express the channel utilization of the “slow” host as Ts Us ( N 1)T f Ts Pc ( N ) t jam N The throughput obtained by a “slow” host is given by: X s Us Sd Ts Performance Anomaly of IEEE802.11b Result : Fast hosts transmitting at a higher rate R obtain the same throughput as slow hosts transmitting at a lower rate r. X f Xs Performance Anomaly of IEEE802.11b Validated by OPNET Simulation Performance of IEEE802.11b Study: The UDP traffic & TCP traffic. Flows in IEEE 802.11 WLANs Frequency Hopping and Direct Sequence Spread Spectrum Techniques Spread Spectrum used to avoid interference from licensed and other non-licensed users, and from noise, e.g., microwave ovens Frequency Hopping (FHSS) Using one of 78 hop sequences, hop to a new 1MHz channel (out of the total of 79 channels) at least every 400milliseconds Requires hop acquisition and synchronization Hops away from interference Direct Sequence (DSSS) Using one of 11 overlapping channels, multiply the data by an 11bit number to spread the 1M-symbol/sec data over 11MHz Requires RF linearity over 11MHz Spreading yields processing gain at receiver Less immune to interference 802.11 Physical Layer Preamble Sync, 16-bit Start Frame Delimiter, PLCP Header including 16-bit Header CRC, MPDU, 32-bit CRC FHSS 2 & 4GFSK Data Whitening for Bias Suppression 32/33 bit stuffing and block inversion 7-bit LFSR scrambler 80-bit Preamble Sync pattern 32-bit Header DSSS DBPSK & DQPSK Data Scrambling using 8-bit LFSR 128-bit Preamble Sync pattern 48-bit Header 802.11 Physical Layer, cont. Antenna Diversity Multipath fading a signal can inhibit reception Multiple antennas can significantly minimize Spacial Separation of Orthoganality Choose Antenna during Preamble Sync pattern Presence of Preamble Sync pattern Presence of energy • RSSI - Received Signal Strength Indication Combination of both Clear Channel Assessment Require reliable indication that channel is in use to defer transmission Use same mechanisms as for Antenna Diversity Use NAV information A Fragment Burst Fragment Burst A B C D Frag1 RTS CTS Frag2 ACK NAV NAV Time Frag3 ACK ACK Security Authentication: A function that determines whether a Station is allowed to participate in network communication Open System (null authentication) & Shared Key WEP - Wired Equivalent Privacy • Encryption of data ESSID offers casual separation of traffic Performance, Theoretical Maximum Throughput Throughput numbers in Mbits/sec: Assumes 100ms beacon interval, RTS, CTS used, no collision Slide courtesy of Matt Fischer, AMD 1 Mbit/sec DS FH (400ms 2 Mbit/sec MSDU size (bytes) 128 DS 0.364 0.364 0.517 0.474 512 0.694 0.679 1.163 1.088 512 0.503 0.512 0.781 0.759 0.906 0.860 1.720 1.624 hop time) FH (400ms hop time) (frag size = 128) 2304 WLAN OPNET Simulation Maximum throughput of a single station as a function of MSDU size (802.11b, 11Mb/s) Background for broadband wireless technologies UWB – Ultra Wide Band High speed wireless personal area network Wi-Fi – Wireless fidelity Wireless technology for indoor environment (WLANS) broader range that WPANs WiMAX – Worldwide Interoperability for Microwave Access Wireless Metropolitan Area Networks (WMANs) For outdoor coverage in LOS and NLOS environment Fixed and Mobile standards 3G – Third generation Wireless Wide Area Networks (WMANs) are the broadest range wireless networks High speed data transmission and greater voice capacity for mobile users [1] A. S. TanenBaum, "Computer Networks," Education, 2003, pp.310-317. Bluetooth Pearson - What is WiMax? [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp.302-310. WiMAX is an IEEE802.16/ETSI HiperMAN based certificate for equipments fulfilling the interoperability requirements set by WiMAX Forum. WiMAX Forum comprises of industry leaders who are committed to the open interoperability of all products used for broadband wireless access. The technique or technology behind the standards is often referred as WiMAX What is WiMax? Broadband is thus a Broadband Wireless Access (BWA) technique WiMax offers fast broadband connections over long distances The interpretability of different vendor’s product is the most important factor when comparing to the other techniques. The IEEE 802.16 Standards The IEEE 802.16 standards family - broadband wireless wideband internet connection - wider coverage than any wired or wireless connection before Wireless system have the capacity to address broad geographic areas without the expensive wired infrastructure For example, a study made in University of Oulu state that WiMax is clearly more cost effective solution for providing broadband internet connection in Kainuu than xDSL The IEEE 802.16 Standards The IEEE 802.16 standards family - broadband wireless wideband internet connection - wider coverage than any wired or wireless connection before Wireless system have the capacity to address broad geographic areas without the expensive wired infrastructure For example, a study made in University of Oulu state that WiMax is clearly more cost effective solution for providing broadband internet connection in Kainuu than xDSL The IEEE 802.16 Standards 802.16, published in April 2002 - A set od air interfaces on a common MAC protocol - Addresses frequencies 10 to 66 GHz - Single carrier (SC) and only LOS 802.16a, published in January 2003 - A completed amendment that extends the physical layer to the 2 to 11 GHz both licensed and lincensed-exempt frequencies - SC, 256 point FFT OFDM and 2048 point FFT OFDMA - LOS and NLOS 802.16-2004, published in July 2004 - Revises and replaces 802.16, 802.16a and 802.16 REVd. - This announcements marks a significant milestone in the development of future WiMax technology - P802.16-2004/Corl published on 8.11.2005 IEEE 802.16: Broadband Wireless MAN Standard (WiMAX) An 802.16 wireless service provides a communications path between a subscriber site and a core network such as the public telephone network and the Internet. This wireless broadband access standard provides the missing link for the "last mile" connection in metropolitan area networks where DSL, Cable and other broadband access methods are not available or too expensive. Comparison Overview of IEEE 802.16a • IEEE 802.16 and WiMAX are designed as a complimentary technology to Wi-Fi and Bluetooth. The following table provides a quick comparison of 802.16a with to 802.11b Parameters 802.16a (WiMax) 802.11 (WLAN) 802.15 (Bluetooth) Frequency Band 2-11GHz 2.4GHz Varies Range ~31miles ~100meters ~10meters Data transfer rate 70 Mbps 11 Mbps – 55 Mbps 20Kbps – 55 Mbps Number of Users Thousands Dozens Dozens Protocol Structure -IEEE 802.16: Standard (WiMAX) IEEE 802.16 Protocol Architecture has 4 layers: Convergence, MAC, Transmission and physical, which can be map to two OSI lowest layers: physical and data link WiMAX OPNET Simulation 5 http users Results ALOHA and Packet Broadcasting Channel Prof. R. A. Carrasco School of Electrical, Electronic and Computer engineering 2006 University of Newcastle-upon-Tyne [1] A. S. TanenBaum, "Computer Networks," Pearson Education, 2003, pp.251-264. Packet Broadcasting Related Works by Metcalfe and Abransom 1) 1970: N. Abramson, “The ALOHA System – Another alternative for computer communications.”, in Proc. AFIPS Press, vol 37, 1970 2) 1973: R. M. Metcalfe, “Packet communication,” MIT, Cambridge, MA, Rep. MAC TR-114, July 1973. 3) 1977: N. Abramson, “The Throughput of Packet Broadcasting Channels,” IEEE Trans. Commun., vol. COM-25, no. 10, Jan 1977 4) 1985: N. Abramson, “Development of the ALOAHANET,” IEEE Trans. Info. Theory., March 1985 IEEE Transactions on Information Theory, March 1985 Development of the ALOHANET ALOHA Project Started In September 1968 Goal To build computer network in University of Hawaii. To investigate the use of radio communications as an alternative to the telephone system for computer communication. To determine those situations where radio communications are preferable to conventional wire communications Problem Limited Resource: Channel Intermittent operation typical of interactive computer terminal don’t need point-to-point channels. (FDMA or TDMA) Spread Spectrum is not appropriate to share the channel. Approach Packet Broadcasting Channels Each user transmits its packets over the common broadcast channel. Key innovation of ALOHANET. There are basically two types of ALOHA systems --Synchronized or slotted and --Unsynchronized or unslotted System Design 1968, they decided main approach (Packet Broadcasting) for design simplicity. Frequency Band: two 100KHz bandwidth channels at 407.350MHz and 413.475MHz. TCU (Terminal Control Unit): Formatting of the ALOHA packets. Retransmission protocol. A Terminal attached TCU by means of RS232. Half duplex mode. (too expensive memory) History 1971: start operation in University of Hawaii. 1971-72: build additional TCUs. 1972: connect to ARPANET using satellite channel. (56kbps) 1973: Metcalfe’s doctorial dissertation about packet broadcasting. 1973: PACNET, international satellite networks. (9600 bits/s) 1973 ~ : Many researches about “packet broadcasting”. 1976: slotted ALOHA. 1984: unslotted ALOHA in the UHF band by Motorola. Strategic Theoretical Realities An appreciation of the basic capacity of the channels and the matching of that capacity to the information rate of the signals. Deals with the problem of scaling for large system. In data network, distinguish between the average data rate and the burst data rate Network design: to handle different kinds of signals from different source. Packet broadcasting channel is more scalable than point-to-point channel or switching. Theoretical analysis give good guide to design network, but the converse also is true. The operation of a real network can be a valuable guide to the selection of theoretical problems. Packet Switching and Packet Broadcasting • Packet switching can provide a powerful means of sharing communication resources. But it employ point-to-point channels and large switches for routing. By use of packet broadcasting Elimination of routing and switches. System simplicity Some channels are basically broadcast channel. (satellite, ..) Needs unified presentation of packet broadcasting theory. Packet Broadcasting Channel Each user transmits packets over the common broadcast channel completely unsynchronized. Loss due to the overlap. How many users can share a channel? Recovery of Lost Packets Positive Acknowledgements. Transponder Packet Broadcasting. Carrier Sense Packet Broadcasting. Packet Recovery Codes ALOHA Systems and Protocols We assume that the start time of packets/s that are transmitted is a Poisson point process An average rate of λ packets Let Tp denote the time duration of a packet The normalised channel traffic G is defined G=λTp It also called the offered channel traffic ALOHA Capacity Errors reduce the ALOHA Capacity Random noise errors Errors caused by packet overlap. Statistical Analysis: S: Channel Throughput G: Channel Traffic Throughput is maximum 1/2e when channel traffic equals 0.5. ALOHA Capacity Meaning of the result ALOHA: 9600 bits/s Terminal: 5bits/s 9600 X 1/2e = about 1600 bits/s The channel can handle the traffic of over 300 active terminals and each terminal will operate at a peak data rate 9600 bits/s ALOHA OPNET Simulation 20 transmitters, 1 receiver The packet interarrival time will be varied to produce different levels of traffic Results Simulation results show that the maximum throughput is achieved near G = 0.5 and is close to the theoretically expected value of 0.18 This matches the theoretical relation given by Slotted ALOHA Channel Capacity Each user can start his packet only at certain fixed instants. Statistical Analysis It increase the throughput Mixed Data Rates Unslotted ALOHA: Variable Packet Lengths = Long Packet Length/ Short Packet Length G1 = Short Packet Traffic G2 = Long Packet Traffic Total channel throughput can undergo a significant decrease. Slotted ALOHA: Variable Packet Rates Assume ALOHA used by n users with different channel traffic. ALOHA Meaning of the result In a lightly loaded slotted ALOHA channel, a single user can transmit data at rates above the limit 1/e. : Excess Capacity. Important for the network consisting of many interactive terminal users and small number of users who send large but infrequent files. Question 1 In a pure ALOHA system, the channel bit rate is 2400bits/s. Suppose that each terminal transmits a 100-bit message every minute on average. i) Determine the maximum number of terminals that can use the channel ii) Repeat (i) if slotted ALOHA is used Question 2 An alternative derivation for the throughput in a pure ALOHA system may be obtained from the relation G=S+A, where A is the average (normalised) rate of retransmission. Show that A=G(1-e-2G ) and then solve for S. Question 3 i) ii) Consider a pure ALOHA system that is operating with a throughput S=0.1 and packets are generated with a Poisson arrival rate λ. Determine: The value of G The average number of attempted transmissions to send a packet. Question 4 Consider a CSMA/CD system in which the transmission rate on the bus is 10 Mτbits/s. The bus is 2 Km and the propagation delay is 5 μs/Km. Packets are 1000 bits long. Determine: i) The end-to-end delay d. ii) The packet duration Tp iii) The ratio d/Tp iv) The maximum utilization of the bus and the maximum bit rate. MSc Telecommunications Questions by Professor R. A. Carrasco 1. Describe the evolution of the Internet and protocols for a communication network. 2. Explain the concept of a hub, bridge, router and modem for local area networks. 3. Explain the concept and protocols of Ethernet (IEEE 802.3), Token Bus (IEEE 820.4) and Token Ring (IEEE 802.5) 4. 1 Describe how you can determine the utilisation for IEEE 802.3 and prove U T tv (1 a(1 2k )) 5. Give advantages and disadvantages of a wireless LAN 6. Describe the criteria for LAN design 7. Explain the architecture for IEEE 802.x, TCP/IP and ISO/OSI 8. Describe the OSI and TCP/IP model 9. Explain each feature of the IP datagram 10. Explain the Internet classes and give an example of how to design an IP address for a network 11. Explain the concept of ARP, RARP, DHCP and DNS 12. Explain IPv4 and IPv6 and how they differ 13. Explain TCP, TCP Client Ports, TCP Server Ports, Error Control, Flow Control and Congestion Control 14. Describe UDP 15. Explain the concept of TCP sockets and what their relation is with the different socket classes 16. Repeat for UDP 17. Give advantages and disadvantages of Voice over IP (VoIP) 18. Explain VoIP protocols and how they are related to each other 19. Give an overview of the IEEE 802 and IEEE 802.11 working group 20. Give an example of an IEEE 802.11 WLAN architecture and explain stations and access points 21. Explain how to determine the channel utilisation expression to evaluate the performance of IEEE 802.11b 22. Describe the concept of a fragment burst 23. Make comparisons between WiMax, WLAN and Bluetooth 24. For security in communication networks, describe private and public key cryptography for Internet browsers. 25. Why is the ALOHA project important in a broadcasting system? 26. Explain how to determine the ALOHA capacity and channel throughput 27. Answer the following (a) What do connection oriented, acknowledged connectionless and connectionless services stand for? Give example applications for each of these services. (b) Explain briefly the following: What is meant by expressions, flow control and error control? What is HDLC Your answer should focus only on the following: What does HDLC stand for? Which layer of the ISO/OSI layer does it relate to? What is the structure/topology of HDLC showing how different nodes communicate with each other indicating if it uses distributed communication or master slave based communications? (c) (d) 28. (a) (b) 29. (a) (b) (c) Explain with the aid of a diagram how a leaky bucket algorithm works for congestion control and how it can be used to aid the transmission of constant bit rate applications. Give five important quality of service performance parameters and their brief definitions. Answer the following Define classes A,B, and C for IPV4 networks. How many class C networks can be defined under a class A network? What is the standard net mask for a class B network? In a class C network that contains 30 hosts, there are 2 IP addresses causing problems in the network. You need to create a subnet mask that can identify in which subnets the IP addresses belong to as well as the host numbers. The IP addresses are: 193.230.8.57 192.225.18.66 Answer the following What is the TCP standard for four layer structure and what is its relationship with the OSI/ISO reference layer model? What is the format for IPV4 and IPV6 headers? Highlight the differences between the two. What does SNMP stand for? What are the SNMP main characteristics and how is its layer configuration structure? 30. (a) Describe the functionality of the following network devices and highlight their differences. Use the ISO/OSI seven layer reference model to associate each of the devices below. • • • • • (b) Repeater/Hub Logical bridge Medium Access Control (MAC) bridge Router Gateway Define the functions of the internet working devices [A,B,C,D] shown in figure 1. below and justify your answer. (A) CAN Token Ring (A) Ethernet ATM LAN Switching Backbone Figure 1. (C) (D) IP WAN Switching Backbone (c) If device B in figure 1. was to be replaced with another internet working device so that more CAN buses can be supported, what device would you replace it with and why? (d) Certain Ethernet system has a maximum bus delay of 20 μSec, and operates with a bit rate of 100 Mbit/sec. Each frame is 1152 bits in length. Determine the maximum utilization factor of the medium under collision conditions.