CS 4390 Exam 1
Multiplexing/Demultiplexing
- A Host receives a datagram IP, - Each datagram has a source IP address - Destionaion IP address - Each datagram carries one transport layer segment - Each segment has a source destination port number - Host IP addresses and port numbers to direct segment to appropriate socket
Hyper Text Transfer Protocol (HTTP)
- Adopts the application layers protocol client/server model - Client: browser that requests receives and displays web objects - Server: Web server that sends (using HTTP protocol) objets in response to requests
Server (Client Server Paradigm)
- Always on host - Permanent IP address - Often in data centers, for scaling
Client (Client Server Paradigm)
- Contact, communicate with server - May be intermittently connected - May have dynamic IP address - Do not communicate directly with each other
web cache
- Goal: Satisfy Client Requests without involving origin server - User configures browsers to point to a local web cache - Browsers send all HTTP Requests to the cache - If the object is in the cache it is returned - Else cache requests objects from origin server, caches received object then returns object to the client - Acts as a server to client requesting - And a client to the origin server.
HTTP3
- Internet draft yet not fully standardized - Formally referred to as HTTP2 over QUIC - Implemented in application layer over UDP - Adds security, per object error and congestion control, over UDP.
HTTP/2 increased flexibility (at server in sending objects to client)
- Key goal is decreased delay in multi-object HTTP requests - Transmission order of requested objects are based on client-specified object priority - Divide objects into frames, schedule frames to mitigate HOL blocking
peer to peer architecture
- No always on server - Arbitrary end systems directly communicate - Peers request service from other peers, service in return to other peers - Peers are intermittently connected and change IP address - Example: P2P file sharing
peer to peer architecture
- No sever - Peers are intermittently connected - IP address may change - Highly scalable - Difficult to manage - Example: bit torrent - Everything is everywhere
socket
- Process sends/recieves message to/from its socket - is similar to a door - Sending processes shoves messages out the door - Sending process relies on transport infrastructure on either side of the door tod eliver messages to socket at receiving process - Two of these are involved one on either side - To receives messages a process must have an identifier - Identifier includes both and IP address and port numbers associated with process on host
TCP (Transmission Control Protocol)
- Reliable - Congestion control - Flow control - Connection setup
non persistent HTTP
- TCP connection opened - At most one object can be sent over TCP connection TCP connection then closed - Downloading multiple objects required multiple connections - Two RTTs per objects want to cut
persistent HTTP
- TCP connection opened to a server - Multiple objects can be sent over a single TCp connection between client and that server - TCP connection closed - Server leaves connection open after sending response - Cuts response time in half to on RTTS
Multiplexing/Demultiplexing
- TCP has a welcoming socket that waits for connection establishment - TCP client creates sockets and sends request to Welcoming Socket - Newly created connection socket is identifies by 4 values
Application Layer Protocol
- Type of messages exchanged: request, or response - Message syntax 1. What fields i messages & how fields are delineated 2. Message semantics: Meaning of information in fields - Rules for when and how processes send and respond to messages 1. Open protocols 2. Defined in RFCs, everyone has access to protocol definition
UDP (User Datagram Protocol)
- Unreliable - Un order delivery - No frills extension of best effort IP
cookies
- Web sites and client browsers use cookies to maintain somes tate between transactions four components: 1. Cookie header line of HTTP response message being sent to a client. 2. Cookie header line in next HTTP request message 3. Cookie file kept on user's host, managed by user's browser 4. Back-end database at Website history of interactions with that user. - Using cookies and the data collected cookies use to store state of a user, to take cookie related actions.
Local Area Network (LAN)
- connects to a base station that is operated by the cellular provider, if its an iphone or android. - Finally, Wireless or LAN used to connect the system to the edge router. - Seen on laptops, phones, laptops, the user transmits/receives packers to/from an access point that is connected into the enterprise's network. - Wireless users must be typically in distance of the connection point and satellite Based
Digital Subscriber Line (DSL)
- gets the internet access from the same company that provides it wired local phone access. - goes to the DSLAM located in the central office. - The splitter splits telephone signals and internet data allowing for the data to either go to the customer or the internet. - Hundreds or even thousands connect to a single modem
cable based
- makes use of the telvsions companies existing tv infrastructure. Requires special modems called cable modems. - Typically an external device and connects via ethernet port. - IMPORT Quirck of a Cable Based access is that is is a shared broadcast medium. - In particular every packet sent by the head and the end travels downstream on every link to every home and. Because of this if several people are downloading a video file on a downstream channel, the actual rate which the file is received is significantly lower\
sockets
- sits on the transport layer, it may be TCP, and then it goes through the hallway which is the internet - is like a door open one door go through the hallway which is the transport layer and then exit the other door to the other endpoint which is the process
application layer
- supporting network applications - Implemented in software, application layer packet: is the message
2005 - present
18bil devices attached to internet, 2007 Iphone, aggressive development of broadband access, services providers like google fb miscrosft create their own networks,
HTTP uses TCP
= Client initiates TCP connection to server on PORT 80 - Server accepts TCP connection from client - HTTP messages are exchanged between a browser and a webserver - TCP Connection is closed - HTTP is also stateless - Server maintains no information about past client requests - HTTP Connection Two Types
1967
ARPAnet concieved
1970
AlohaNet satellite network in Hawaii
1972
Arapa Net public demo
1990s
Arpanet decommissioned
1979
Arpanet has 200 Nodes
Packets Queueing Delay
Arriving packets dropped if no free buffers, loss happens if the queue is full
1964
Baran Packetswithcing in military nets
1974
Cerf and Kahn Architecture for networks
1983
DNS defined for name to ip address translation
link layer
Data transfer between neighbooring elements, link layer packet frame
1976
Ethernet at Xeroax PARC
Physical Media
Examples include twisted-pair copper wire, coaxial cable, multimode fiber-optic cable, terrestrial radio spectrum, and satellite radio spectrum
1969
First Arapa Net node Operational
packet loss
If the buffer, storage space for packets that are waiting to be sent, the packets have to be dropped and are lost, lost packet may be retransmitted by a node or a original source, or not at all.
packet switching
Is not suitable for real-time services because of its variable and unpredictable end-to-end delays. However it offers better sharing of transmission capacity than circuit switching. Its simpler more efficient and less costly to implement than circuit switching. allocates link use on demand.
1961
Kleinrock theory shows packetswitching
1990s-2000s
More exciting apps, instant messaging, P2P file sharing, network security to forefront, Est 50 Million, 100 Million Users:
1991
NSF lifts restrictions for commercial use of NSFnet
Network Core
Packet Switching Vs Circuit Switching
circuit switching
Pre allocates the use of transmission link regardless of demand, with allocated but unneeded link time going unused.
4 sources of packet delay
Processing, Queuing, Transmission, Propogation
1988
TCP congenital control
TCP demultiplexing
TCP socket identified by 4-tuple
Server (HTTP)
Web server that sends (using HTTP protocol) objets in response to requests
protocol stack
application, transport, network, link, physical
rate / time
average
physical layer
bits on the wire different physical media different protocol
Client (HTTP)
browser that requests receives and displays web objects
protocil
defines the format and the order of messages exchanged between two or more communicating entities, as well as the actions taken on the transmission and/or receipt of a message
TCP (Transmission Control Protocol)
demultiplexing using 4 tuple: source and destination IP addresses, and port numbers
UDP (User Datagram Protocol)
demultiplexing using destination port number only
1983
deployment of first TCP/IP
1985
ftp protocol defined
Client Server Paradigm
has clients and servers
diagrams
network application layer packet
transmission delay
packet being transmitted
server process
process that waits to be contacted
client process
process the initiates communication
transport layer
process-process data transfer, transport application-layer message to application endpoints
Instantaneous throughput
rate at a given time.
Demux
receiver uses all four values to direct segment to appropriate socket
network application layer
routing of datagram from source to destination, IP routing protocols implemented with hardware and software
throughput
the rate at which bits are transferred between sender/receiever.
Guided Media
the waves are guided along a solid medium such as a fiber optical cable or a twisted pair of copper wire.
Unguided Media
the waves propagate in outer space, such as wireless LAN or digital satellite channel
processing
thinks the processor has to do, checking bit error, figuring out output link, based on the address in the packet.
propagation
time it takes for the signal to move across the medium, typically a short amount of time
segment
transport layer
early 1990s
web