Possible topics for final - Click on topic to see linked page.

Spring 2014 - concentrate on the Bus and Networking portions of the
review

Pay attention to number of lines, physical vs. virtual bus, what kind of encoding. Also use wikipedia to review : Bus - general 4 major types, Address, Data, Control, Power Synchronous vs. asynchronous Timing issues. Real vs. Virtual (Multiplexed adress/data or bus over serial lines). PCI 33 MHz 32 bit multiplexed address/data * Maximum bandwidth 133MB (32bit * 33MHz). 4 control/byte enable (C/BE) lines. With adddress, indicates type of transaction. With data, used to mask which byte[s] of 4 byte bus important. 4 hard wired interrupt lines (round robin). Later designed allowed for virtualized interrups over data line. 1 pair (GNT/REQ) lines for requesting and receiving permission to master bus from arbitor. Reflected wave signaling - signal sent down a line. When it hits the end of the line, it is reflected back. This cause the signal to be amplified and easy to read. Plug-and-Play design. Use 3 part idendifier for devices on 'bus'. 8 bit bus id (256 buses). 5 bit device id (32 devices). 3 bit function id (8 functions). function 0 reserved for communicating with device for configuration. 3 alternative address spaces. Configuration - used to address PCI control units on target devices. Used to recognize devices and map theier user accessable addresses. Memory mapped space. I/O mapped space. Physical extension bus supports up 2 for slots. Addtinional slots added with bridging circuits but mapped to separate bus id. PCIe Sits on top of PCI protocol and maps Address/dataa/contro lines into serialized packets. Each device connected as a single device assigned its own bus id. Uses lanes, two pair of lines. One pair for sending data in each direction. Low voltage date sent over pair of line and read using differential signaling, provides effecive way of filtering out external noise. Supports up to 32 lanes. Byte of data sent on single lane. Subsequent bytes can be on additional lanes. Skewing has on effect. Multi-lane transmission only effective when moving large blocks of data (burst). PCIe 1a ~ 2.5GT/sec per lane. 8/10b RLL encoding for timing. PCIe 2 ~ 5GT/sec per lane. 8/10b RLL encoding for timing. PCIe 3 ~ 10GT/s per lane. 128b/130b RLL. USB USB 1.1, 2, 3 Serial communication. Single pair of lines for data (D+,D-) Used to transmit all address, data, and control info. Differential signaling. Root hub controls (arbitrates) and initializes all transactions. * Upstream. Interrupts are polled, Root hub queries each device to see if it wants attention. Plug and play - hot swappable. But more complex devices should be unmounted before disonnecting. 127 devices may be addressed. Each device can have up to 32 endpoints. A connection between a device's endpoint and the root hub is calle a 'pipe' Message pipes are bidirectional and usually used for contorl transfers such as simple commands and status responses. Streming pipes are unidirectional and used for data transfers. isoschronous - time critical (streaming radio), possible lost packets. interrupt - quick but small response (keyboard, mouse). bulk - large block transfers, accuracy important, time not. Pipe number 0 used to initialize Plug and Play negotiations to activate new device. Bus designed as tree structure with each for in tree treated as an addressed hub. Devices can be daisey chained if they contain an internal hub. USB 1, 2 use bit stuffing. 0 stuffed into data stream if after 6 consecutive 1's. USB 3 uses 8b/10b RLL. Devices need to be smart enough to identify their general class so controller can establish basic functionality with device. OS may then load additional drivers to advantage of full functinality of device. IEEE 488 (GPIB) Parallel bus. 8-bit multiplex address/data and device control. 5 interface management lines (bus control). 3 handshaking lines (bus/device status). Designed to run at 1MHz. Can connecct 15 devices, devices assigned IDs with hardware switches. No clock line and does not use embedded clocking (no RLL encoding). Level based signaling. Uses handsaking, interface mgmt and handshaking lines, to identify start and end of all data transers. Three class of devices : Controller - responsible for initiating and monitoring data transaction. Talker - device sending data. Listener - device receiving and storing data. Networking. The ISO-OSI model has seven layers. Application - application such has Filezilla, Firefox, etc. Presentaion - converts data to proper format (ASCII to Unicode, etc), also provide encription. Session - establishes connection to remote server, login, logout and proper termination of connection. Transport - handles completion of a task such as a file transfer. Responsible for detecting missing packets and re-transmission. Network - supports packet movement along each hop across network and routing across network. Not concerned with whole communication, just each packet individually. Internet level addressing handled at this leve. Datalink layer - creation and handlng of a frame of data for transmission. Hardware level addressing (Mac#) at this level. Ethernet, Token ring, etc. Hardware level - physical and electrical characteristics of the network node. TCP-IP model Combines and redistributes OSI model usually as 4 layers.. Application layer - ftp, http, etc. (filezilla, web browser) Includes OSI presentation and part of OSI session layer. Transport layer - handles host to host connection, TCP transport merges parts of the OSI session layer and transport layer. TCP - Transmission Control Protocol frame. A core protocol designed to reliably transfer a block of data between 2 end points. Connection based - uses a 3-way handshake to reserve a 'connection'. Client sends SYN. Listening server responds with SYN-ACK Client confirms with final ACK See : http://en.wikipedia.org/wiki/Transmission_Control_Protocol#Connection_establishment UDP - User Datagram Protocol packet. Single packet transaction used to request or send small ammount of data. Considred unreliable. Connectionless. Performs no initial handshake to establish connection. Simply sends packet. If no response from target, will retry or give up. Usefull for simple requests such as pinging existence of another system or requsting time. Also useful where delivering next packet of info on time is more important that recovering lost packet. e.g Streaming audio. Network layer - OSI network layer. IP - Internet Protocol packet - primary packet for moving Transport level packets from node to node across Internet. ICMP - Internet Control Message Protocol packet. Used for transmitting status/error messges beween nodes. ICMP packets contain error flags and IP of system whose packet triggered error. ICMP protocol will forward ICMP packet back to originating system (but not application). It is up to system's IP level support to decide how to handle error. Datalink layer. Because most modern network cards are custom microchip technology, the link layer basically is the datalink and hardware layers. You can't reprogram or rewire an ethernet card to be anything else. Ethernet - IEEE 802.3 CSMA/CD Token Ring - IEEE 802.5 Wireless - IEEE 802.11 a,b,g,n CSMA/CA Low level local networking Basic structure of an ethernet frame. Contains source and destination hardware MAC addresses (media access control) Payload 42-1500 octets Overall 84-1542 octets, includes trailing interframe gap. Mac address High 3 octets contain OUI - organizationally Unique Indentifier Specifies issuer of id - usually card manufacturer. Low 3 octets conain NIC - Network Interface controller. Should be unique in the world. Basic structure of an IPv4 packet. (some fields not listed) Version type (ipv4/ipv6) ILH - header length. Used to indicate options in header. Total length 16-bit 65535 maximum payload Identification - used if need to fragment current payload. Fragment offset TTL - time to live. Used to remove lost packets. Protocol number - payload type = TCP, UDP, ICMP, etc. Check out http://en.wikipedia.org/wiki/List_of_IP_protocol_numbers Header Checksum Source IP address Destination IP address Options Data payload. Basic structure of an IPv6 packet. Version type Payload length - 16 bit. IPv6 limits packet size to smallest supported across connection. If fragmentation required, it must be handled by source and destination nodes. Does not allow fragmentation along path. Next header - used to indicate additional options in header. Hop Count - used to remove lost packets. Source IP address Destination IP address Data payload. Basic structure of a TCP segment frame. Source Port 16-bit Destination port 16-bit Sequence number ( TCP commuincation assumed to be multi-packet) ACK # if used. (hand shaking support) Data offset 4-bit - start of data portion. counts 32-bit words. Various flags for TCP transmission. Options - including segment size. Data How does token ring provide arbitration (how does a node get access). Token passed from node to node. If node wishs to communicate, it converts token into communications packet. Other nodes can flag need as packet passes by. Packet passes around ring until it encounters target node. Target node copies or inserts data depending on task and packet continues on back to sender. If no one flags need, sender can send another packet. Other wise, converted back to token and passed on to next node until a requesting node receives it. How does ethernet provide arbitration (how does a node get access). CSMA/CD carrier sense, multiple acces / collision detection CSMA/CD How does Wireless provide arbitration. * Wireless ethernet uses a variation, CSMA/CA (oollision avoidance) which uses a small packet to reserve bandwidth before larger transmission. . CSMA/CA Internet name resolution is performed by the Domain Name System. All nodes on the network have basic program/function called a resolver. Resolving a name. Which service/system provides name to ip and ip to name resolution? Domain Name System (DNS). What program/function is responsible for querying the DNS system for information - the resolver. Which services provides hardware mac@ to ip assignment? DHCP - Dynamic Host Connection Protocol : current protocol/service used to resolve MAC@<->IP. Considered application level protocol/service. * arp/rarp - address resolutin protocol/reverse address resolution protocol : Original protocol implemented at datalink level, had to be implemented on each subnet. * bootp - Bootstrap protocol : advancement over ARP/RARP. Uses UDP datagrams to request resolution. Network level requst. These are so "well known" that you should know them (helpful on the test). Port Service 20 ftp-data 21 ftp 22 ssh 23 telnet 25 SMT simple mail tranfer (unencrypted). 53 Domain Name Resolution services. DHCP 67 bootps(server) client requests info from server. 68 bootpc(client) server responds to client. 80 http (web) 443 https (secure web) Email (useful for setting up your phone to get your email) Receiving email. 993 imap4 (secure) fetching email. 995 pop4 (secure) fetching email. Sending email from client to your mail server. 587 msa (message submission agent, secure) 465 smtps (simple message transportation protocol, secure) Most mail servers listen on both. IPv4 Classes. Class A - Most significant bit of IP address set to 0 0bbb bbbb.xx.xx.xx Most significant octet identifies domain. 128 domains 16M (2^24) nodes. Class B - 2 MSbs set to 10 10bb bbbb.xx.xx.xx Top 2 octetes id domain. 16384 (2^14) domains. 65K (2^16) nodes. Class C - 3 MSbs set to 110 110b bbbb.xx.xx.xx Top 3 octets id domain. 256 nodes. Domain may use netmask to further separate assigned domain into smaller subdomains. NIU owns 13.156 and uses a subnet mask of 255.255.255.0 which allows us to have up to 256 sub-net of 256 nodes. The subnet division does not have to fall on an octet break. Subnet mask of 255.255.255.128 would create 512 subnets of 128 nodes.