Standards and Network Protocols M.C. Juan Carlos Olivares Rojas Department of Computer and System Instituto Tecnol贸gico de Morelia jcolivar@itmorelia.edu.mx 19.72388 lat, -101.1848 long
Disclaimer Some material in this presentation has been obtained from various sources, each of which has intellectual property, so in this presentation will only have some rights reserved. These slides are free, so you can add, modify, and delete slides (including this one) and slide content to suit your needs. They obviously represent a lot of work on my part. In return for use, I only ask the following: if you use these slides (e.g., in a class) in substantially unaltered form, that you mention their source.
Outline Standards of IEEE LAN Conection. 802 Project Connection. 802.1 Connection between Networks. 802.2 Logical Link Control (LLC). 802.3 Ethernet. 802.4 Token Bus. 802.5 Token Ring. 802.6 FDDI. 802.11 Wireless LAN.
Outline Protocol Architectures TCP/IP NetBEUI/NetBIOS IPX/SPX. Emergent Protocols Similarities and differences between OSI and TCP/IP models.
Objectives of the Session • The students will know the basis of intenrnational computer networks standards. • The students will know and apply the LAN concepts.
Standards of IEEE LAN Conection The standards only indicate how computer networks must be works guarantee interoperability between another Equipments. The main functions in the 802.x standards are the framming and Medium Access Control.
IEEE 802.x Technologies • The group of standards 802.x is concern about the implementation and use of Local Area Network (e.g. TokenRing, Ethernet) and Wide Area Network (e.g. FDDI, WiMax). • These standars are focused in DataLink Layer. The transmission medium can be wired o wireless. • Some standards are focused in define services in DataLink Layer such quality of service,
802.1 Connection between Networks DataLink Services • • • • •
Provide services to the Network Layer Send and receive data in a frame format Processing and error correction DataFlow Control Medium Access Control ***
Where is the link layer implemented? • in each and every host • link layer implemented in “adaptor” (aka network interface card NIC) – Ethernet card, PCMCI card, 802.11 card – implements link, physical layer
• attaches into host’s system buses • combination of hardware, software, firmware
host schematic application transport network link
cpu
memory
controller link physical
host bus (e.g., PCI)
physical transmission
network adapter card
MAC Addressing • MAC (or LAN or physical or Ethernet) address: – function: get frame from one interface to another physically-connected interface (same network) – 48 bit MAC address (for most LANs) • burned in NIC ROM, also sometimes software settable
LAN Addresses Each adapter on LAN has unique LAN address
1A-2F-BB-76-09-AD
71-65-F7-2B-08-53
LAN (wired or wireless)
Broadcast address = FF-FF-FF-FF-FF-FF = adapter
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
802.2 Logical Link Control (LLC) The Logical Link Control (LLC) data communication protocol layer is the upper sublayer of the Data Link Layer specified in the seven-layer OSI model (layer 2). It provides multiplexing and flow control mechanisms that make it possible for several network protocols (IP, IPX) to coexist within a multipoint network and to be transported over the same network media.
802.2 Logical Link Control (LLC) The LLC sub-layer acts as an interface between the Media Access Control (MAC) sublayer and the network layer. It is the same for the various physical media (such as Ethernet, token ring, and WLAN).
Medium Access Control • There are a lot of technices for sharing the transmision medium. The more used in computer networks are: • • • • •
ALOHA CSMA Protocols without colision Wireless Protocol Other Multiplexation
ALOHA The frames are transmitting in arbitrary moment
CSMA (Carrier Sense Multiple Access) CSMA: listen before transmit: If channel sensed idle: transmit entire frame • If channel sensed busy, defer transmission
• human analogy: don’t interrupt others!
• collisions can still occur: • propagation delay means • two nodes may not hear • each other’s transmission • role of distance & propagation delay in determining collision probability 5: DataLink Layer 5-
Persistent and Not PersistenteCSMA
CSMA/CD (Collision Detection) CSMA/CD: carrier sensing, deferral as in CSMA – collisions detected within short time – colliding transmissions aborted, channel wastage
reducing
• collision detection: – easy in wired LANs: measure signal strengths, compare transmitted, received signals – difficult in wireless LANs: received signal strength overwhelmed by local transmission strength
CSMA Collision Detection
CSMA/CD can be in 3 states: contention, transmission, or idle
Token Passing • control token passed
T
from one node to next sequentially. • token message • concerns: • token overhead • Latency • single point of failure (token)
(nothing to send) T
data 5-
Extra (10 points in a Final Unit) • Make a program wich simulate Ethernet Newtrok with collisions. • Must be graphical (easy way) with computers conects in a Hub or by Bus. • The paramaters (time, persistence, frecuency) cab be set up. • The simulation must show the colisions and calculate statistc
802.3 Ethernet “dominant” wired LAN technology: • cheap $20 for NIC • first widely used LAN technology • simpler, cheaper than token LANs and ATM • kept up with speed race: 10 Mbps – 10 Gbps
Metcalfe’s Ethernet sketch
Ethernet: Unreliable, connectionless • connectionless: No handshaking sending and receiving NICs
between
• unreliable: receiving NIC doesn’t send acks or nacks to sending NIC – stream of datagrams passed to network layer can have gaps (missing datagrams) – gaps will be filled if app is using TCP – otherwise, app will see gaps
• Ethernet’s MAC protocol: unslotted CSMA/CD
Manchester encoding
• used in 10BaseT • each bit has a transition • allows clocks in sending and receiving nodes to synchronize to each other – no need for a centralized, global clock among nodes!
• Hey, this is physical-layer stuff!
Ethernet Evolution
802.3 MAC Frame
Categories of Standard Ethernet
Encoding in a Standard Ethernet
10Base5 implementation
10Base2 implementation
10Base-T implementation
10Base-F implementation
Summary of Standard Ethernet implementations
A network with and without a bridge
Switched Ethernet
Fast Ethernet implementations
Encoding for Fast Ethernet
Summary of Fast Ethernet
Gigabit Ethernet
Encoding in Gigabit Ethernet
Summary of Gigabit Ethernet
Summary of Ten-Gigabit Ethernet
802.4 Token Bus •Token bus is a network implementing the token ring protocol over a "virtual ring" on a coaxial cable. •A token is passed around the network nodes and only the node possessing the token may transmit. •If a node doesn't have anything to send, the token is passed on to the next node on the virtual ring.
802.4 Token Bus •Each node must know the address of its neighbour in the ring, so a special protocol is needed to notify the other nodes of connections to, and disconnections from, the ring. •It is mainly used for industrial applications. Token bus was used by GM (General Motors) for their Manufacturing Automation Protocol (MAP) standardization effort.
802. 5 Token Ring • Token ring is a local area network protocol which resides at the data link layer (DLL) of the OSI model. It uses a special three-byte frame called a token that travels around the ring. Token ring frames travel completely around the loop. • Cabling is generally IBM "Type-1" shielded twisted pair, with unique hermaphroditic connectors.
Token Ring • Initially (in 1985) token ring ran at 4 Mbit/s, but in 1989 IBM introduced the first 16 Mbit/s token ring products and the 802.5 standard was extended to support this. • Token ring LANs normally use differential Manchester encoding of bits on the LAN media.
Token Ring
Token Ring
802.6 FDDI • Fiber distributed data interface (FDDI) provides a standard for data transmission in a local area network that can extend in range up to 200 kilometers. • These protocol is derived from the IEEE 802.4 token bus timed token protocol. • It uses optical fiber (though it can use copper cable, in which case one can refer to CDDI). FDDI uses a dual-attached, counter-rotating
FDDI • A FDDI network contains two token rings, one for possible backup in case the primary ring fails. The primary ring offers up to 100 Mbit/s capacity. When a network has no requirement for the secondary ring to do backup, it can also carry data, extending capacity to 200 Mbit/s. The single ring can extend the maximum distance; a dual ring can extend 100 km (62 miles).
Wireless LAN
Basic Service Sets
IEEE 802.11
Extended Service Sets
MAC Layers in WiFi
CSMA/CA with NAV
802.11 Frame Format
802.11 Control Frames
Protocol Architectures • There are many Protocol Architectures in Computer Network, we will discuss the following: • • • •
TCP/IP NetBEUI/NETBIOS IPX/SPX Emergent Protocols
TCP/IP • It’s the most important Open System Network Architecture • TCP/IP is the fundamental basis of Internet and WAN Networks. • We describe in few slides about Network and Transportation Layers.
source message segment Ht datagram Hn Ht frame Hl Hn Ht
M M M M
Encapsulation
application transport network link physical
link physical switch
destination M Ht
M
Hn Ht
M
Hl Hn Ht
M
application transport network link physical
Hn Ht
M
Hl Hn Ht
M
network link physical
Hn Ht
M
router
Two Key Network-Layer Functions • forwarding: move analogy: packets from router’s input to routing: process of planning trip from appropriate router source to dest output • routing: determine route taken by packets from source to dest. – routing algorithms
forwarding: process of getting through single interchange
Forwarding table VC number 22
12
1
Forwarding table in northwest router: interface
Incoming VC # 12 63 7 97 …
2
32
3
interface number Outgoing interface 3 1 2 3 …
Outgoing VC # 22 18 17 87 …
Routers maintain connection state information!
IP Fragmentation & Reassembly •
•
network links have MTU (max.transfer size) - largest possible link-level frame. – different link types, different MTUs large IP datagram divided (“fragmented”) within net – one datagram becomes several datagrams – “reassembled” only at final destination – IP header bits used to identify, order related fragments
fragmentation: in: one large datagram out: 3 smaller datagrams
reassembly
Position of IP Protocol
IP Packet
IP Dual Stack
IP Addressing: introduction • IP address: 32-bit identifier for host, router interface • interface: connection between host/router and physical link
223.1.1.1 223.1.1.2 223.1.1.4 223.1.1.3
223.1.2.1 223.1.2.9
223.1.3.27
223.1.2.2
– router’s typically have 223.1.3.2 223.1.3.1 multiple interfaces – host typically has one interface – IP addresses associated with each223.1.1.1 = 11011111 00000001 00000001 00000001 interface 223
1
1
1
Subnets • IP address: – subnet part (high order bits) – host part (low order bits)
• What’s a subnet ? – device interfaces with same subnet part of IP address – can physically reach each other without intervening router
223.1.1.1 223.1.1.2 223.1.1.4 223.1.1.3
223.1.2.1 223.1.2.9
223.1.3.27
223.1.2.2
subnet 223.1.3.1
223.1.3.2
network consisting of 3 subnets
Subnets How many?
223.1.1.2
223.1.1.1
223.1.1.4 223.1.1.3
223.1.9.2
223.1.7.0
223.1.9.1
223.1.7.1 223.1.8.1
223.1.8.0
223.1.2.6 223.1.2.1
223.1.3.27 223.1.2.2
223.1.3.1
223.1.3.2
IP addressing: CIDR CIDR: Classless InterDomain Routing – subnet portion of address of arbitrary length – address format: a.b.c.d/x, where x is # bits in subnet portion of address
host subnet part part 11001000 00010111 00010000 00000000 200.23.16.0/23
IP addresses: how to get one?
Q: How does a host get IP address? • hard-coded by system admin in a file
– Windows: control-panel->network>configuration->tcp/ip->properties – UNIX: /etc/rc.config • DHCP: Dynamic Host Configuration dynamically get address from as server
– “plug-and-play”
Protocol:
IP addresses: how to get one? Q: How does network get subnet part of IP addr? A: gets allocated portion of its provider ISP’s address space ISP's block 11001000 00010111 00010000 00000000 200.23.16.0/20 Organization 0 11001000 00010111 00010000 00000000 200.23.16.0/23 Organization 1 11001000 00010111 00010010 00000000 200.23.18.0/23 Organization 2 11001000 00010111 00010100 00000000 200.23.20.0/23
NAT: Network Address Translation rest of Internet
local network (e.g., home network) 10.0.0/24
10.0.0.1
10.0.0.4
10.0.0.2
138.76.29.7 10.0.0.3
All datagrams leaving local network have same single source NAT IP address: 138.76.29.7, different source port numbers
Datagrams with source or destination in this network have 10.0.0/24 address for source, destination (as usual)
IPv6 • Initial motivation: 32-bit address space soon to be completely allocated. • Additional motivation: – header format helps processing/forwarding – header changes to facilitate QoS IPv6 datagram format: – fixed-length 40 byte header – no fragmentation allowed
speed
IP Classes
IP Mask
IP Subnetting Analogy
Subneted Network Example
Subneted Examples
Direcciones IP (2) Direcciones IP especiales.
Introducci贸n a UDP El encabezado UDP.
La cabecera del segmento TCP
Cabecera de TCP.
Microsoft Platform • It’s the most extended PC Platform. • First version of Windows don´t have network conectivity. • Novell was supported in 1993 with Windows 3.11 for Workgroup. • TCP/IP appears with Windows 95 but it wasn´t enable by default
NETBIOS/NETBEUI • NetBIOS is an acronym for Network Basic Input/Output System. • It provides services related to the session layer of the OSI model allowing applications on separate computers to communicate over a local area network. • As strictly an API, NetBIOS is not a networking protocol.
NETBIOS/NETBEUI • Older operating systems ran NetBIOS over IEEE 802.2 and IPX/SPX using the NetBIOS Frames (NBF) and NetBIOS over IPX/SPX (NBX) protocols, respectively. In modern networks, NetBIOS normally runs over TCP/IP via the NetBIOS over TCP/IP (NBT) protocol. This results in each computer in the network having both a NetBIOS name and an IP address corresponding to a (possibly different) host name.
NETBIOS/NETBEUI • NetBIOS was developed in 1983 by Sytek Inc. as an API for software communication over IBM's PC-Network LAN technology. • In 1985, IBM went forward with the token ring network scheme and a NetBIOS emulator was produced to allow NetBIOS-aware applications from the PC-Network era to work over this new design.
NETBIOS/NETBEUI • This emulator, named NetBIOS Extended User Interface (NetBEUI), expanded the base NetBIOS API with, among other things, the ability to deal with the greater node capacity of token ring. A new networking protocol, NBF, was simultaneously produced to allow NetBEUI (NetBIOS) to provide its services over token ring. • In 1986, Novell released its own NetBIOS emulator. Its services were encapsulated using the NetBIOS over IPX/SPX (NBX) protocol.
NETBIOS/NETBEUI • In 1987, a method of encapsulating NetBIOS in TCP and UDP packets, NetBIOS over TCP/IP (NBT), was published. It was described in RFC 1001 and RFC 1002. • The NBT protocol was developed in order to "allow an implementation [of NetBIOS applications] to be built on virtually any type of system where the TCP/IP protocol suite is available," and to "allow NetBIOS interoperation in the Internet."
NetBIOS/NetBEUI • NetBIOS provides three distinct services: • Name service resolution.
for
• Session service communication.
name
for
registration
and
connection-oriented
• Datagram distribution service connectionless communication.
for
NetBIOS/NetBEUI • SMB, an upper layer, is a service that runs on top of the Session Service and the Datagram service, and is not to be confused as a necessary and integral part of NetBIOS itself. • It can now run atop TCP with a small adaptation layer that adds a packet length to each SMB message; this is necessary because TCP only provides a byte-stream service with no notion of packet boundaries.
NetBIOS/NetBEUI • Name service • In order to start Sessions or distribute Datagrams, an application must register its NetBIOS name using the Name service. • NetBIOS names are 16 bytes in length and vary based on the particular implementation. Frequently, the 16th byte is used to designate a "type" similar to the use of ports in TCP/IP.
NetBIOS/NetBEUI • In NBT, the name service operates on UDP port 137 (TCP port 137 can also be used, but it is rarely if ever used). • The name service primitives offered by NetBIOS are: Add Name, Add Group Name, Delete Name, Find Name • NetBIOS name resolution is not supported by Microsoft for Internet Protocol Version 6 (IPv6).
NetBIOS/NetBEUI • Session service • Session mode lets two computers establish a connection for a "conversation", allows larger messages to be handled, and provides error detection and recovery. • In NBT, the session service runs on TCP port 139. The session service primitives offered by NetBIOS are: Call, Listen, Hang Up, Send, Send No Ack, Receive.
NetBIOS/NetBEUI • Datagram distribution service • Datagram mode is "connectionless". Since each message is sent independently, they must be smaller; the application becomes responsible for error detection and recovery. • In NBT, the datagram service runs on UDP port 138.The datagram service primitives offered by NetBIOS are:Send Datagram, Send Broadcast, Receive Datagram, Receive Broadcast Datagram.
NetBIOS/NetBEUI • ASCII Values of 16th characters of NetBIOS "names” • 00: Workstation Service • 03: Messenger Service • 20: File Service (also called Host Record) • 1B: Domain Master Browser - Primary Domain Controller for a domain • 1C: Domain Controllers for a domain (group record with up to 25 IP addresses) • 1D: Master Browser • 1E: Browser Service Elections
NetBIOS/NetBEUI • Windows Internet Name Service (WINS) is Microsoft's implementation of NetBIOS Name Service (NBNS), a name server and service for NetBIOS computer names. WINS is to NetBIOS names, what DNS is to domain names. • The LMHOSTS (LAN Manager Hosts) file is used to enable domain name resolution when other methods, e.g. WINS, fail. The file can be located with the path %systemroot %\system32\drivers\etc\.
NetBIOS/NetBEUI • Server Message Block (SMB) operates as an application-level network protocol mainly used to provide shared access to files, printers, serial ports, and miscellaneous communications between nodes on a network. • It also provides an authenticated Inter-process communication mechanism. Most usage of SMB involves computers running Microsoft Windows, where it is often known as "Microsoft Windows Network".
NetBIOS/NetBEUI • When discussing SMB, one should distinguish: • the SMB protocol • the SMB services that run on NetBIOS • the DCE/RPC services that use SMB as an authenticated Inter-process communication channel (over named pipes) • the "Network Neighborhood" protocols which primarily (but not exclusively) run as datagram services directly on the NetBIOS transport
NetBIOS/NetBEUI • Microsoft launched an initiative in 1996 to rename SMB to Common Internet File System (CIFS), and added more features, including support for symbolic links, hard links, larger file sizes, and an initial attempt at supporting direct connections over TCP port 445 without all the NetBIOS trimmings (a largely experimental effort that required further refinement). • In 2006, Microsoft introduced Server Message Block 2.0.
NetBIOS/NetBEUI • SMB2 reduces the 'chattiness' of the protocol by reducing the number of commands and subcommands to 19 from over 100. • It has mechanisms for pipelining, that is, sending additional requests before the response to a previous request arrives. It adds the ability to compound multiple actions into a single request, which significantly reduces the number of round-trips the client needs to make to the server, improving performance as a result.
NetBIOS/NetBEUI • SMB2 supports larger buffer-sizes, which can provide better performance with large filetransfers and better use of faster networks. • It also introduces the notion of "durable file handles": these allow a connection to an SMB server to survive brief network-outages, such as may occur in a wireless network, without having to construct a new session.
Novell Platform • Novell is largely responsible for the use of IPX/SPX as a popular computer networking protocol due to their dominance in the network operating system software market (with Novell Netware) from the late 1980s through to the mid-1990s. • DOS • Novell's original NetWare client was written for DOS. Initial versions required a hard-linked protocol stack, where a separate executable would be created by the network administrator
Novell Platform • Windows • Because of IPX/SPX's prevalence in LANs in the 1990s, Microsoft added support for the protocols into Windows' networking stack, starting with Windows for Workgroups and Windows NT. Microsoft even named their implementation "NWLink", implying that the inclusion of the layer 3/4 transports provided NetWare connectivity. In reality, the protocols were supported as a native transport for Windows' SMB/NetBIOS, and NetWare connectivity required additional installation.
IPX/SPX • IPX/SPX stands for Internetwork Packet Exchange/Sequenced Packet Exchange. IPX and SPX are networking protocols used primarily on networks using the Novell NetWare operating systems. • IPX and SPX are derived from Xerox Network Services' IDP and SPP protocols, respectively. IPX is a network layer protocol (layer 3 of the OSI Model), while SPX is a transport layer protocol (layer 4 of the OSI Model).
IPX/SPX • The SPX layer sits on top of the IPX layer and provides connection-oriented services between two nodes on the network. SPX is used primarily by client/server applications. • IPX/SPX was primarily designed for local area networks (LANs), and is a very efficient protocol for this purpose (typically its performance exceeds that of TCP/IP on a LAN).
Linux Platform • System *X were the first Platform in using TCP/IP Stack Protocol to communicate them. • Exist a lot of implementation such as: Solaris, Mac OS X, HP-UX, AIX, among others. • Conceptually, Pltaform are very similar in outside but internally are very diferent.
Emergent Protocols • Emergent Protocols are new protocols widely used in Telecomunications. One examples are VoIP protocols (SIP, H.323, etc.) • Most of the time, emergent protocols let they don’t be when they are standarized and used frecuently (they become a commodities). • Exist a lot of Emergent Protocols and Network Technologies, one example is Apple’s Rendezvous, that it’s a zero network
Similarities and differences between OSI and TCP/IP models. • This topic was discussed in Unit 1.
References • Forouzan, B. (2008), Data Comunications and Networking, 4th. Edition, McGraw-Hill. • Tanenbaum, A (2004). Computer Networks. 4th Edition. Prentice Hall. • Kurose, J. and Ross, K. (2007) Computer Networking: A Top Down Approach 4th edition. Addison-Wesley, July 2007.
Questions?