CS458/558 -Introduction (The TCP/IP Protocol Family)
- Transport
- Transmission Control Protocol(TCP): connection-based services
- User Datagram Protocol (UDP): connectionless services
- Routing
- Internet Protocol(IP): handles transmission of information
- Internet Control Message Protocol(ICMP): handles status message for IP
- Routing Information Protocol (RIP): determines routing
- Open Shortest Path First (OSPF): alternate protocol for determining routing
- Network Addresses
- Address Resolution Protocol (ARP): determines addresses
- Domain Name Service (DNS): determines addresses from machine names
- Reverse Address Resolution Protocol (RARP): determines addresses
- User Services
- Boot Protocol (BOOTP): starts a network machine
- File Transfer Protocol (FTP): transfers files
- Telnet: allows remote logins
- Simple Mail Transfer Protocol(SMTP): transfers electronic mail
- Post Office Protocol (POP): supports forwarding of e-mail
- Gateway Protocols
- Exterior Gateway Protocol (EGP): transfers routing information for external networks
- Gateway-to-Gateway Protocol (GGP): transfers routing information between gateways
- Interior Gateway Protocol (IGP): transfers routing information for internal networks
- Others
- Network File System (NFS): enables directories on one machine to be mounted on another
- Network Information Services (NIS): maintains user accounts across networks
- Remote Procedure Call (RPC): enables remote applications to communicate
- Simple Network Management Protocol (SNMP): sends status message about the network
CS458/558 -Chapter 1 Open Systems, Standards, and Protocols
- Open Systems
- What is an Open System? (non-proprietary)
The description of the architecture has been published or is readily available to anyone who wants to build protocols for a hardware or software platform
ex. UNIX
- Network Architectures
network - collection of computers and peripherals connected by some medium
- Local Area Networks (LAN) [network is localized to a single location (usually a building)]
- bus [contains a single main communications pathway (backbone) with each device attached to the main cable(bus) through a transceiver or with a T-connector on a network interface card (NIC)] (usually Ethernet)
- ring [uses a central control unit (Media Access Unit - MAU) with a ring circuit inside] (usually token ring)
- star [requires a central computer with everything connected to it]
- hub [uses a main cable (backplane) with hubs connected to it; computers are connected to the hubs or switches]
- Wide Area Networks (WAN)
composed of LANs joined together by high-speed links with gateways (routers / bridges) connecting the LAN to the WAN
- OSI Model (Layers)
- Physical (deals with the "mechanical, electrical, functional, and procedural means" required for transmission of data) [wiring: 10BaseT, 10Base2, etc.]
- Data Link ("provides for the control of the physical layer, and detects and possibly corrects errors that can occur") [handles data transmission errors] [Ethernet, Token-ring, etc.]
- Network (provides the physical routing of the data, determining the path between the machines)
- Transport (provides the "transparent transfer of data from a source end open system to a destination end open system") [establishes, maintains, and terminates communications between two machines; responsible for ensuring that data sent matches data received]
- Session (organizes and synchronizes the exchange of data between applications) [handles application errors]
- Presentation (converts applications' data (in ASCII or EBCDIC) into/from a common format)
- Application (end-user interface)
- Terminology and Notation
- packets uniform chunk of data with a header and a trailer
- Subsystem - collective of a particular layer across a network
- Entities - active routines that comprise a given layer
- N Notation - used to refer to a layer and the layers above/below it
- N-Functions - different things that the layer does
- N-Facilities - set of facilites provided to the layer above
- Services - entire set of facilities provided to the layer above
- Queues and Connections
- communication between two OSI applications in the same layer is through queues to the layer beneath them [Note that there is a queue for each direction]
- Data (service primitives) is put into/retrieved from the queue by the applications (service users)
- request primitive - service submits a service primitive to the queue requesting permission to communicate with another service in the same layer
- indication primitive - service provider in the layer beneath the sending application sends to the intended receiving application to let it know that communication is desired
- response primitive - sent by the receiving application to the layer beneath's service provider to acknowlege the granting of communications between the two service providers
- confirmation primitive sent from the service provider to the final application to indicate that both applications on the layer above can now communicate
- above is called confirmed service used by connection-oriented or connection mode communications
- if no response and confirmation - unconfirmed service used by connectionless mode uses data packets called datagrams
- Standards
- Setting Standards
- International Standardization Organization (ISO)
- American National Standards Institute (ANSI)
- British Standards Institute (BSI)
- Deutsches Institut fur Normung (DIN)
- Association Francaise du Normalization (AFNOR)
- Internet Standards
- Internet Configuration Control Board (ICCB) formed as part of DARPA in 1980
- renamed Internet Activities Board (IAB) in 1983
- task of developing Internet standards was assigned to the Internet Engineering Task Force (IEFT) in 1986
- now reports to the Internet Society formed in 1992
- open protocols first defined in the RFC 1310,2 (see list of RFCs in Appendix E)
- Protocols
service data unit (SDU) - data sent between layers
protocol data unit (PDU) - analogous data between two machines
- Breaking Data Apart
- segmentation - process of breaking an N-service data unit(N-SDU) into several N-protocol data units (N-PDU)
- reassembly - process of combining several N-PDUs into an N-SDU
- blocking - combination of several SDUs (might be from different services) into a larger PDU within the SDUs' layer
- unblocking - breaking up a PDU into several SDUs in the same layer
- concatenation - process of one layer combining several N-PDUs from the next higher layer into one SDU
- separation - reverse of concatenation
- multiplexing - several connections are supported by a single connection in the next lower layer
- demultiplexing - connection is split into several connections for the layer above it
- splitting - single connection is supported by several connections in the layer below
- recombining - several connections are combined into a single one for the layer above
- Protocol Headers - information attached to the front of data that describes the datagram it is attached to