* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download TCP/IP Discussion Related to Essay Question on Final
Asynchronous Transfer Mode wikipedia , lookup
Dynamic Host Configuration Protocol wikipedia , lookup
Remote Desktop Services wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Deep packet inspection wikipedia , lookup
TCP congestion control wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Hypertext Transfer Protocol wikipedia , lookup
Real-Time Messaging Protocol wikipedia , lookup
Internet protocol suite wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Chapter 5 - TCP/IP Discussion Related to Essay Question on Final Dr. V.T. Raja Oregon State University Minimum Information Needed by a Computer in a TCP/IP Network The computer’s IP address A subnet mask address With smask, the computer can determine which IP addresses are part of its subnet IP address of DNS Server The minimum information needed is either provided by DHCP Server or is obtained from the computer’s configuration file DNS can help translate between AL addresses and IP addresses IP address of Router/Gateway that connects the computer outside its subnet (for static routing) If dynamic routing is used, then appropriate routing software/ access to routing tables would be needed Example for Essay Question Example: Assume the following: All computers have been provided minimum info specified in the previous slide Client A requests a web page from Web Server D. Client A is connected to Router R, which is connected to Server D. TCP/IP are the transport and network layer protocols, and Ethernet is the data link layer protocol. Example Client A knows IP address of Server D, and also AL address of D (www.D.edu). (Continued) This implies that client A has already requested IP of D from DNS in the past, and now client A has the IP of D in its address table. Assume A and D know the DL address of R, and that R knows DL addresses of A and D. This implies that both A and D have already issued ARP messages to determine DL of R in the past, and now have the DL address of R in their respective address tables. Similarly, R has the DL address of A and D in its address tables. Example for Essay Question (Continued) IP of A is 16.32.64.33; Subnet mask of A is 255.255.255.128 IP of R is 16.32.64.128; IP of D is 16.32.64.129; Assume NIC address of A is 00-A0-B0-C0-A4-54-6A; NIC address of R is 00-E0-B0-C0-E4-45-6E; NIC address of D is 00-D0-B0-C0-D4-75-7D Assume there are no errors in transmission Question: Describe the data flow (across the different layers in the 5-layer model) for the web request made by Client A to Web Server D. Description of Data Flow At Client A User interfaces with Web browser of Client A, and types www.D.edu Transport Layer Application Layer Formats user’s request in HTML/ HTTP format, and Passes the formatted packet to protocol operating at transport layer TCP is protocol operating at at TL Packetizing is major function performed by TCP Frame size is primarily determined by DL layer; In this example, Ethernet would allow less than 1500 bytes (1492 bytes) per frame TCP creates a TCP Header Description of Data Flow At Client A Transport Layer (Continued) Sample Contents of TCP Header: Source/Destination Port Address (default (80)) to identify software used at source and to be used at destination Packet number (to enable reassembling at destination) TCP passes [TCP|HTTP|User Data] to NL (IP protocol) of Client A. Description of Data Flow At Client A Network Layer: Major functions of IP are Addressing and Routing. Addressing: IP determines IP address of destination. The destination in this example is D. (This is based on the objective - client A is sending a web page request to Web Server D). Based on the assumptions stated in the third slide, IP of D is determined by a table lookup at Client A. (Continued) Addressing (Continued) IP determines DL address of next computer enroute (R in this example) Based on the assumptions stated in the third slide, DL address of R is determined by a table look up at Client A. IP passes info about DL address of R to DL layer of client A. Description of Data Flow At Client A (Continued) Routing: Using smask, and smask algorithm, IP determines if next computer enroute is on the same subnet as A or not. In this example, Client A concludes that R is not on its subnet. IP then interfaces with routing protocol, and then determines what type of routing to use. (In this example, IP would conclude that next computer on the route is R). IP creates an IP Header. Sample contents of IP Header: Routing info is provided Source IP Address is specified as: 16.32.64.33 Destination IP Address is specified as: 16.32.64.129 Description of Data Flow At Client A (Continued) IP passes [IP|TCP|HTTP|User Data] to DL layer of ClientA. Data Link Layer: Major functions of DL Layer are: MAC, Message Delineation, and Error Detection/Error Correction DL Layer creates DL Header (DLH) and DL Trailer (DLT). The DLH and DLT delineate each frame received from IP, contain info about how to perform MAC, and how to perform error detection/error correction. Parity bits would be added depending on error detection technique. Description of Data Flow At Client A (Continued) DLH contains: Source DL address (00-A0-B0-C0-A4-546A) and Destination DL address (00-E0-B0-C0-E445-6E). DL passes [DLH|IP|TCP|HTTP|User Data|DLT] to DL layer of R via physical layer; Physical layer passes packets to DL layer of R, and performs MAC as advised by DL layer of client A. Description of Data Flow At R (Continued) Ethernet performs error detection (i.e., validates CRC32), based on info provided in DLH/DLT packets obtained from Client A. Ethernet performs error correction (Stop-and-WaitARQ); Since there are no errors in transmission, R sends ACK for each packet it receives from A. After sending ACK, DL removes DLH and DLT; passes [IP|TCP|HTTP|User Data] to NL layer of R. Description of Data Flow At R Network Layer of R: (Continued) IP looks at destination IP (16.32.64.129) specified in IP header Compares destination IP with its own IP (16.32.64.128) Concludes that it needs to re-route packet(s). Since destination has not been reached, IP does not invoke TCP. Description of Data Flow At R (Continued) IP modifies routing info and creates modified IP header that reflects this change. IP determines and passes NIC address of next hop device (D) to DLL of R. IP passes [Modified-IP|TCP| HTTP| UserData] to R’s DLL. Description of Data Flow At R (Continued) Data Link Layer creates new DL Header and Trailer, which delineate each frame received from IP. Sample contents of DLH/DLT include: Source DL address (00-E0-B0-C0-E4-45-6E) Destination DL address (00-D0-B0-C0-D4-75-7D) MAC specified (i.e., CSMA/CD) CRC-32 bit value that would help D detect transmission errors Info on how D should perform EC (i.e., Stop-and-wait ARQ) MD info (i.e., length of frame is specified in header) DL passes [New DLH|Modified IP|TCP|HTTP|User Data| NewDLT] to DL layer of R via physical layer. Description of Data Flow At D (Continued) Physical layer follows MAC as per CSMA/CD rules while passing packets to DL layer of D. DL layer performs error detection (e.g., CRC-32), based on info provided in ‘New DLH/DLT’ obtained from R. DL layer performs error correction/ ACK/NAK (e.g., Stopand-Wait-ARQ), based on info provided in ‘New DLH/DLT’ obtained from R. After sending ACK, DL removes ‘New DLH/DLT’, and passes [IP|TCP|HTTP|User Data] to NL layer of D. Description of Data Flow At D (Continued) Network Layer of D: IP looks at destination IP (16.32.64.129) specified in ‘modified IP header’ Compares destination IP with its own (16.32.64.129) IP Concludes that final destination (D) has been reached IP removes ‘modified IP header’ Passes [TCP|HTTP|User Data] to D’s TL Description of Data Flow At D (Continued) Transport Layer: TCP reassembles packets based on packet # specified in TCP Header. In this example, there is no necessity for this due to the short size of message. TCP looks at destination port address (80), and invokes the correct web application software in D TCP removes TCP header Passes [HTTP|User Data] to Application Layer of D Description of Data Flow At D (Continued) Application Layer: Application layer removes HTTP Header and presents user data in expected userfriendly format (Now the Web Server will have to pass its web page to Client A via R!!)