Title: Computer Science 101 A Survey of Computer Science
1Computer Science 101A Survey of Computer Science
- Networks
- Communication Protocols
2Telephone Protocol
- Hellopause Hello, Prof Whaley Judy from
class, sorry power is off.Duh pausepau
se About our exam pause Toodle, Prof
WhaleyBye, Judy
3Protocols
- Network Protocol agreed upon set of rules,
conventions, and agreements for the efficient and
orderly exchange of information.
4Internet Society
- Internet Society
- Non-profit, non-governmental, professional
society composed of more than 150 worldwide
organizations - Establish and enforce network protocol standards
- www.isoc.org
5Protocol Hierarchy (TCP/IP)
- Internet protocols are in layers, each layer
addressing an aspect of the communication task. - Change in operation of layers are independent.
6Physical Layer
- Physical layer protocols rules governing the
exchange of bits across a physical communication
channel such as fiber optic cable, copper wire,
wireless, etc. - How do we know a bit is present on line?
- How long will it remain on the line?
- Digital or analog?
- What voltage levels for 0 or 1?
- Shape of connector between computer and line?
7Data Link Layer
- Data link protocols Deals with
- Error handling errors in the bit stream
- Framing problem Identify start and end of
message in the bit stream. - Two stages
- Layer 2a medium access control
- Layer 2b logical link control
8Data Link Layer Medium Access Control
- Medium Access Control Who has access to shared
line - Contention-based approach Most common method
- When node wants to send message
- It listens to see if line is in use, if not it
sends - If in use, monitors line until it is idle and
then transmits
9Contention-based protocol
10Data Link Layer Logical Link Control
- Logical Link Control Ensure that message
traveling across channel (shared or
point-to-point) arrives correctly. - Basic idea is to detect that an error has
occurred and retransmit the original message.
11ARP Automatic Repeat reQuest Algorithm
- Packet makeup
- Start of packet delimiter
- Packet identifier sequence number
- Message
- Error-check bits
- End of packet delimiter
12ARP Algorithm
- A
- sends packet to B
- keeps copy of packet in memory
- waits
- if acknowledgement received that B received
packet without error - discard
- send next packet
- else after some fixed time
- resend packet
- B
- receives packet
- does error test
- if OK
- send acknowledgement to A that received ok
13ARP Algorithm
14Network Layer
- Network layer protocols
- so far just dealt with point-to-point
- two critical responsibilities for network layer
- create universal addressing scheme for all
network nodes - deliver messages between any two nodes in the
network - glue that holds entire network together
- network layer in internet is called Internet
protocol or IP
15Network Layer - IP
- Internet Protocol
- each node has 32-bit IP address
- IP address often written as four eight bit
numbers in range 0-255 (00..00 to 11..11) - IP address of host with the Alsos project
137.113.100.111 or10001001 01110001 01100100
01101111
16Network Layer - DNS
- Domain Name Service
- converts symbolic host names like www.cs.wlu.edu
into its 32-bit IP address - Huge database distributed over thousands of
computers - When symbolic name is used, it is forwarded to
local name server. - If found, IP sent back
- If not, request is forwarded to remote name
server, etc.
17Network Layer - Routing
- Routing
- Finding best path to use from A to B
- Brute force would take too long
- Dijkstras shortest path algorithm is O(n2) where
n is number of nodes - Still a very hard problem
- Topology is constantly changing
- Network failures
- Busy links
18Transport Layer Port Addresses
- Transport layer protocols Ports
- How do we get message to correct program on host?
- Need address, in addition to IP, that identifies
which program is needed on the machine - Host machine uses port numbers assigned to
programs - There are well-known port numbers so we dont
always have to know the port number for example
web servers almost always run on port 80
19Transport Layer TCP
- Transport layer protocols TCP
- Transport Control Protocol create high-quality,
error free, order preserving end-to-end delivery
service on top of unreliable IP - Requires that two programs at source and
destination create a connection an agreement to
exchange messages. - Then an acknowledgement and sequence system is
used to be sure all messages are received and
placed in correct order.
20Application Layer
- Application layer protocols
- Deals with the application services, different
protocols for different killer apps
21Application Layer - HTTP
- Hypertext transfer protocol
- Used for World Wide Web
- Single web page identified by Uniform Resource
Locator URL protocol//host address/page
http//www.cs.wlu.edu/whaleyt/classes/101/index.h
tml - Connection must be established between browser of
user and web server running on port 80 of host
22Application Layer - HTTP
- Hypertext transfer protocol continued
- Request message sent from browser to host
- message includes several parts such as protocol,
page name, host name, language, etc. - Response message sent from host to browser
- message has information that server was
successful, length and name of page, content
type, etc. as well as the content itself.
23Alsos Log File Entry
2003-12-09 (Date) 131109
(Time) 137.113.118.71 (Source
IP) 137.113.100.111 (Host IP) 80 (Port) GET
(Method) /adv_rst.asp (URI
stem) tfieldOakRidgeSelectionKeywordsourceal
lresults10 (Query) 200 (Status) Mozill
a/4.0(compatibleMSIE6.0WindowsNT5.1 .N
ETCLR1.0.3705.NETCLR1.1.4322)
(Browser) http//alsos.wlu.edu/history.asp
(Referer)