260 likes | 398 Views
ECE 4110 – Internetwork Programming. Tuna Tugcu GTREP Tuna.Tugcu@gtrep.gatech.edu. Outline. General information about the course: Objective Textbooks and web site Labs and C programming language Rules Review of computer networks: Definitions and architecture OSI model
E N D
ECE 4110 – Internetwork Programming Tuna Tugcu GTREP Tuna.Tugcu@gtrep.gatech.edu
Outline • General information about the course: • Objective • Textbooks and web site • Labs and C programming language • Rules • Review of computer networks: • Definitions and architecture • OSI model • Internetwork connections ECE 4110 – Internetwork Programming
Objective • Understand how the Internet works • IP addressing • TCP/IP • Flow control, congestion avoidance, etc. • Routing • Linux kernel • Hands on networking exercises • Sockets programming • TCP/IP Protocol implementation ECE 4110 – Internetwork Programming
Textbooks and Web Site • We will use three textbooks: • TCP/IP Illustrated: Volume I (Stevens) • Unix Network Programming (Stevens) • TCP/IP Protocol Suite (Forouzan) • Lots of additional resources mentioned on the web site. • http://www.gtrep.gatech.edu/academics/ece/summer03/4110.html • Course material and announcements ECE 4110 – Internetwork Programming
Labs • We will have 8-10 labs. • Digilab I in Chatham Center • Tech 2118 in GaSoU • Lab hours TBA • Each day late -10 points • Maximum 7 days late; o/w you will get zero from that lab. • We will use Linux OS. • Installing Linux on your PC is encouraged. • Topics: • TCP-UDP traffic generators, network sniffing, IP forwarding, routing and queuing, etc. ECE 4110 – Internetwork Programming
C Programming Language • Yes, you need to learn C language (but not C++). • I will teach some basic concepts in C, but remember that this is not a C Programming course. • You have to study mostly by yourself. ECE 4110 – Internetwork Programming
Rules • Grading: • Three tests (20% each) • Final exam (20%) • Labs (20%) • Open books, but not notes • You know the difference between discussing with friends and cheating. ECE 4110 – Internetwork Programming
Introduction to Computer Networks • Network: Collection of devices (computers, printers, etc.) that are able to communicate with each other. • internet: Collection of more than one networks. • Internet: You know … ECE 4110 – Internetwork Programming
Internet Hierarchy * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Introduction (cont’d) • Protocol: Set of rules that define what is communicated when and how. • Protocols are defined by standards: • De facto • De jure • Standard bodies, forums, and agencies: • ISO, ITU-T (formerly CCITT), ANSI, IEEE, EIA, Frame Relay Forum, ATM Forum, FCC. ECE 4110 – Internetwork Programming
OSI Model * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
OSI Model (cont’d) • Layered architecture • Peer processes • Interfaces between layers (use of primitives) • (1) Physical Layer: Transmits bit streams over a physical medium. [representation of bits; synchronization; transmission mode (simplex, half-duplex, full-duplex); etc.] ECE 4110 – Internetwork Programming
OSI Model (cont’d) • (2) Data Link Layer: Provides link connectivity. [framing; physical addressing; flow, error, and access control]. MAC is a sublayer of data link layer. • (3) Network Layer: Provides network connectivity, i.e., delivery of packets from source to destination. Each packet is handled independently (no flow concept). [logical addressing; routing] ECE 4110 – Internetwork Programming
OSI Model (cont’d) • (4) Transport Layer: Provides end-to-end connectivity, i.e., flow control for a sequence of packets. [SAP; segmentation and reassembly; connection, flow, and error control] • Connectionless • Connection-oriented ECE 4110 – Internetwork Programming
SAR in Transport Layer * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
OSI Model (cont’d) • (5) Session Layer: Provides dialog control and synchronization. • (6) Presentation Layer: Provides syntax and semantics interoperability. [encoding translation; encryption; compression] • (7) Application Layer: Provides network virtual terminal, file transfer, mail, and directory services. • Actually, the last three layers are very thin or non-existent. ECE 4110 – Internetwork Programming
Data exchange in OSI Model * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Node-to-Node Delivery * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
End-to-End Delivery * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Connecting Multiple Networks * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Repeater • Physical layer. • Connects two segments of a LAN. • Regenerates the signal in one segment and transmits to the other. * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Hub • Physical layer • Multiport repeater • Implements star topology. • Hub removes the length limitation. How ??? * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Bridge • Two layers. • Has filtering capability. • Most bridges today are transparent they learn the physical (MAC) addresses of the stations connected directly. * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Router • Physical, data link, and network layers. • Provides LAN/LAN, LAN/WAN, WAN/WAN connectivity. (Repeaters, hubs, and bridges connect the segments of the same LAN.) * From TCP/IP Protocol Suite, B. A. Forouzan, Prentice Hall
Router (cont’d) • Three important points about a router: • For each interface, there is one physical (MAC) and one logical (IP) address. • If the arriving packet at an interface is NOT destined to that interface, the router ignores the packet. • The router changes both the source and destination physical addresses in the packet. ECE 4110 – Internetwork Programming
Switch • Two-layer switch: • Unique interface for each terminal no competing traffic. • A better design for bridge. • Three-layer switch: • Same as a router in functionality; just better in performance. • A better design for router. ECE 4110 – Internetwork Programming