* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download SCORE: A Scalable Architecture for Implementing Resource
Net neutrality law wikipedia , lookup
Multiprotocol Label Switching wikipedia , lookup
Asynchronous Transfer Mode wikipedia , lookup
TCP congestion control wikipedia , lookup
Distributed firewall wikipedia , lookup
Network tap wikipedia , lookup
Airborne Networking wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Computer network wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
Deep packet inspection wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Communication protocol wikipedia , lookup
Zero-configuration networking wikipedia , lookup
UniPro protocol stack wikipedia , lookup
Internet protocol suite wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
CSCE 201 Computer Networks CSCE 201 - Farkas 1 Reading Assignment Required: – Security Awareness: Chapter 3 Recommended: – Internet Society (ISOC) homepage, http://www.isoc.org – Computer Network, http://en.wikipedia.org/wiki/Computer_network – Easttom: Chapter 2 CSCE 201 - Farkas 2 Before Internet Isolated, local packet-switching networks – only nodes on the same network could communicate Each network is autonomous: – different services – different interfaces – different protocols CSCE 201 - Farkas 3 Before Internet (cont) ARPANET: sponsored by Defense Advanced Research Projects Agency (DARPA): • 1969: interconnected 4 hosts • 1970: host-to-host protocol: Network Control Protocol (NCP) • 1972: first application: e-mail Stanford Research Institute (SRI) Univ. of California at Santa Barbara (UCSB) Univ. of California at LA (UCLA) Univ. of Utah CSCE 201 - Farkas 4 Internet Connect Existing Networks: ARPANET, Packet Radio, and Packet Satellite NCP not sufficient Develop new protocol 1970s: Transmission Control Protocol (Kahn and Vinton) – Based on packet switching technology – Good for file transfer and remote terminal access Divide TCP into 2 protocols – Internet Protocol (IP): addressing and forwarding of packets – Transmission Control Protocol (TCP): sophisticated services, e.g. flow control, recovery 1980: TCP/IP adopted as a DoD standard 1983: ARPANET protocol officially changed from NCP to TCP/IP 1985: Existing Internet technology 1995: U.S. Federal Networking Council (FNC) define the term Internet CSCE 201 - Farkas 5 Goals (Clark’88) Connect existing networks 1. Survivability 2. Support multiple types of services 3. Must accommodate a variety of networks 4. Allow distributed management 5. Allow host attachment with a low level of effort 6. Be cost effective 7. Allow resource accountability CSCE 201 - Farkas 6 Internet Challenge Interconnected networks differ (protocols, interfaces, services, etc.) Solutions: 1. 2. Reengineer and develop one global packet switching network standard: not economically feasible Have every host implement the protocols of any network it wants to communicate with: too complex, very high engineering cost 3. Add an extra layer: internetworking layer Hosts: one higher-level protocol Network connecting use the same protocol Interface between the new protocol and network CSCE 201 - Farkas 7 Layering Organize a network system into logically distinct entities – the service provided by one layer is based only on the service provided by the lower level entity CSCE 201 - Farkas 8 Without Layering Application Transmission Media SMTP FTP Coaxial cable HTTP Fiber optic Each application has to be implemented for every network technology! CSCE 201 - Farkas 9 With Layering Intermediate layer provides a unique abstraction for various network technologies Application SMTP FTP HTTP Intermediate layer Transmission Media Coaxial cable Fiber optic CSCE 201 - Farkas 10 Layering Advantages – Modularity – protocols easier to manage and maintain – Abstract functionality –lower layers can be changed without affecting the upper layers – Reuse – upper layers can reuse the functionality provided by lower layers Disadvantages – Information hiding – inefficient implementations CSCE 201 - Farkas 11 TCP/IP Networking Model TCP/IP has a different layered model Application Layer Transport Layer (TCP) Error Correction Reliable Connection Internetwork Layer (IP) WAN Connectivity Unreliable Datagram Service Network Access Layer Physical Connection LAN Connection CSCE 201 - Farkas 12 Network Access Layer Responsible for physical connection – Shape – Size – Voltages Responsible for rules of how to put bits on the “wire” These are the building blocks for the network The goal of the physical layer is to move information across one “hop” CSCE 201 - Farkas 13 Internet Layer Transports data from one end-user system to another end-user systems by hopping across as many physical connections as necessary Provides a mechanism to connect many LANs together effectively Connectionless and unreliable datagram protocol Protocols: – Internet Protocol – Routing Protocol – Supporting Protocol CSCE 201 - Farkas 14 IP Header 0 4 Version HLen 8 16 TOS Identification TTL 19 31 Length Flags Fragment offset 20 bytes Protocol Header checksum Source address Destination address Options (variable) Comments – HLen – header length only in 32-bit words (5 <= HLen <= 15) – TOS (Type of Service): now split in Differentiated Service Field (6 bits) remaining two bits used by ECN (Early Congestion Notification) Length – the length of the entire datagram/segment; header + data Flags: Don’t Fragment (DF) and More Fragments (MF) Fragment offset – all fragments excepting last one contain multiples of 8 bytes Header checksum - uses 1’s complement – – – – CSCE 201 - Farkas 15 IP Addresses IP provides logical address space and a corresponding addressing schema IP address is a globally unique or private number associated with a host network interface Every system which will send packets directly out across the Internet must have a unique IP address IP addresses are based on where station is connected IP addresses are controlled by a single organization address ranges are assigned They are running out of space! CSCE 201 - Farkas 16 Routing Protocols • Enable routing decisions to be made • Manage and periodically update routing tables, stored at each router • Autonomous collection of routers: •Under single administration •Use same routing protocol: Interior Gateway Protocol (IGP) •Use Exterior Gateway Protocol (EGP) to communicate other systems • Router : “which way” to send the packet closer. (Keep routing table small and allow to handle unlimited number of systems.) • Protocol types: •Reachability •Distance vector CSCE 201 - Farkas 17 Supporting Protocols Handle specific tasks – Address Resolution Protocol (ARP) – Reverse Address Resolution Protocol (RARP) – Internet Control Message Protocol (ICMP) – Internet Group Management Protocol (IGMP) CSCE 201 - Farkas 18 The Domain Name System Each system connected to the Internet also has one or more logical addresses. Unlike IP addresses, the domain address have no routing information - they are organized based on administrative units There are no limitations on the mapping from domain addresses to IP addresses CSCE 201 - Farkas 19 Domain Name Resolution Domain Name Resolution: looking up a logical name and finding a physical IP address There is a hierarchy of domain name servers Each client system uses one domain name server which in turn queries up and down the hierarchy to find the address If your server does not know the address, it goes up the hierarchy possibly to the top and works its way back down CSCE 201 - Farkas 20 Transport Layer (TCP) Present a reliable end-to-end pipe to the application Data either arrives in the proper order or the connection is closed Keeps buffers in the sending and destination system to keep data which has arrived out of order or to retransmit if necessary Provides individual connections between applications CSCE 201 - Farkas 21 TCP Connection Establishment Three-way handshake – Goal: agree on a set of parameters: the start sequence number for each side Server Client (initiator) CSCE 201 - Farkas 22 Application Layer Uses the reliable TCP connections to accomplish useful work over the network – client-server applications – standard applications telnet (port 23) mail (port 25) finger (port 79) ftp (port 21) Each application uses a “port” and a protocol Each port can have many connections CSCE 201 - Farkas 23