CS 326: Operating Systems. Networking. Lecture 17
|
|
- Arabella O’Neal’
- 6 years ago
- Views:
Transcription
1 CS 326: Operating Systems Networking Lecture 17
2 Today s Schedule Project 3 Overview, Q&A Networking Basics Messaging 4/23/18 CS 326: Operating Systems 2
3 Today s Schedule Project 3 Overview, Q&A Networking Basics Messaging 4/23/18 CS 326: Operating Systems 3
4 Project Overview 4/23/18 CS 326: Operating Systems 4
5 Today s Schedule Project 3 Overview, Q&A Networking Basics Messaging 4/23/18 CS 326: Operating Systems 5
6 Network Terminology Host computer/device connected to a network. Communicate via packets Packet a unit of data, generally represented as a sequence of bytes Router device that forwards packets through the network until they reach their destination host A message may pass through several routers on its way to the destination Protocol defines how packets are laid out 4/23/18 CS 326: Operating Systems 6
7 TCP We use the Internet Protocol (IP) Suite for a majority of our communications For reliable delivery, we use the Transmission Control Protocol (TCP) Modeled as a stream of bytes Packets will reach their destination (eventually ) and the contents are verified Retransmit when a failure/corruption occurs Packets are received in order 4/23/18 CS 326: Operating Systems 7
8 UDP User Datagram Protocol (UDP) on the other hand, is connectionless Rather than a stream of bytes, we deal with discrete messages No acknowledgment or retransmission Ordering is not guaranteed Used for games, video streaming, and other applications where delivery needn t be guaranteed 4/23/18 CS 326: Operating Systems 8
9 TCP or UDP In Project 3, we will be using TCP for communication No need to worry about messages getting delivered Won t have to reconstruct out-of-order files getting transferred between our client/server 4/23/18 CS 326: Operating Systems 9
10 Sockets The standard API for network communication is sockets Introduced in 1983, 4.2 BSD UNIX Sockets follow the Unix philosophy: everything is a file! When we open a connection, we get a file descriptor that we can read() and write() from Just like a file or pipe 4/23/18 CS 326: Operating Systems 10
11 Virtualizing the Network Since this is OS class, we need to discuss how to virtualize the network to allow multiple processes to communicate at the same time We accomplish this via ports Each outgoing and incoming socket connection is assigned a port number 16-bit unsigned integer (max: 65535) 4/23/18 CS 326: Operating Systems 11
12 Ports Want to talk to the web server process? Connect to port 80 How about SSH? Port 22! Processes bind to these ports and listen on them When initiating an outgoing connection (e.g., from your browser) you can assign any available port 4/23/18 CS 326: Operating Systems 12
13 Privileged Ports The first 1024 ports are privileged Must be root to bind to these ports The standard SSH port is 22, but what if a user application could bind to port 22 before the SSH daemon starts up? You could masquerade as SSH and steal passwords! And yes: you can bind to any port you want. SSH could run on port 80 (commonly www) if you want! 4/23/18 CS 326: Operating Systems 13
14 Basic Server Workflow Create a socket: socket() Bind to a port: bind() Listen for connections: listen() Accept incoming connections: accept() Returns a file descriptor Write/read data to/from the FD: write() / read() TCP is bidirectional: you can send and receive from the same FD 4/23/18 CS 326: Operating Systems 14
15 Basic Client Workflow Create a socket: socket() Connect to the remote host: connect() Specify remote IP address and port number Write/read data to/from the FD: write() / read() TCP is bidirectional: you can send and receive from the same FD Usually the client starts off with a write() but it doesn t necessarily have to work this way 4/23/18 CS 326: Operating Systems 15
16 Some Issues (1/2) The first unintuitive thing about sockets is there is no concept of a message You can t send a struct over the wire and then receive it on the other end At least not directly! Instead, everything gets read/written as byte arrays (streams of bytes) Not all the bytes will come in at the same time, although order is guaranteed with TCP 4/23/18 CS 326: Operating Systems 16
17 Some Issues (2/2) A read() or write() call may not actually read/write the number of bytes you ask for You have to check! Maybe only 10 bytes have been received and we want 100 read() can still return with those initial 10 bytes We have to store incoming data in a buffer and update it as necessary! 4/23/18 CS 326: Operating Systems 17
18 Network Concerns At the OS level, we can mostly rely on the network to do its job But we still have to make decisions about how to implement networking logic For instance, TCP vs UDP And we need to think about: Bandwidth Latency 4/23/18 CS 326: Operating Systems 18
19 Bandwidth Also known as throughput How many bits we can push through the network Trending upward over time slowly 1000 Mbps networks are common in data centers 10 Gbps is gaining some traction Many home internet services are still in the range of Mbps If we re going to use plumbing metaphors, it s the size of the pipe 4/23/18 CS 326: Operating Systems 19
20 Latency How long it takes your bits to get from one point to another Latency has been trending downward overall, but not by leaps and bounds We are limited by the laws of physics here How long the pipe is and how fast data can travel through it Some communication mediums are more prone to latency: Ethernet vs WiFi 4/23/18 CS 326: Operating Systems 20
21 Round Trip Times Another factor to consider is the round-trip time RTTs Another way of looking at latency Communication rarely goes one way Even if you re uploading a file, you d like to confirm that it actually made it over in one piece Testing RTTs: pinging a host 4/23/18 CS 326: Operating Systems 21
22 Ping Round Trip Times PING alpha.lan ( ): 56 data bytes 64 bytes from : icmp_seq=0 ttl=64 time=1.133 ms (From my couch to the closet) PING stargate.cs.usfca.edu ( ): 56 data bytes 64 bytes from : icmp_seq=0 ttl=53 time= ms (Down the road to USF) PING ruby.cs.colostate.edu ( ): 56 data bytes 64 bytes from : icmp_seq=0 ttl=50 time= ms (Fort Collins, Colorado) PING speedtest.shg1.linode.com ( ): 56 data bytes 64 bytes from : icmp_seq=0 ttl=50 time= ms (Singapore) 4/23/18 CS 326: Operating Systems 22
23 Interesting: Physical Distances From my laptop to my router: 15 feet / 4.60 m From my router to USF: 2 miles / 3.2 km From USF to Colorado: ~950 miles / 1609 km From USF to Singapore: ~8,434 miles / 13,573 km 4/23/18 CS 326: Operating Systems 23
24 Source: 4/23/18 CS 326: Operating Systems 24
25 Source: 4/23/18 CS 326: Operating Systems 25
26 Bandwidth-Delay Product (1/2) Link capacity (bps) * Round-trip delay time (s) This measures how many bits are in flight How much data is sent before the receiver gets anything A network with a large bandwidth-delay product is called a long fat network, or LFN (elephen) Satellite networking has a large bandwidth-delay product 4/23/18 CS 326: Operating Systems 26
27 Bandwidth-Delay Product (2/2) Important because of its interplay with TCP TCP dynamically tunes its window size If the window is too small, link capacity is wasted If the window is too large, the other end gets overwhelmed! Queuing delays Thinking back to our ping example: My local network (300 Mbit/sec, 1.1 ms) = 0.14 MB Singapore (50 Mbit/sec, ms) = 0.78 MB 4/23/18 CS 326: Operating Systems 27
28 Today s Schedule Project 3 Overview, Q&A Networking Basics Messaging 4/23/18 CS 326: Operating Systems 28
29 Simple Messaging (1/3) If you want to send one well-defined message between components, all you need is a fixed-size buffer: char buffer[25]; Remember: sockets are byte streams, not message streams A much more common format: 4/23/18 CS 326: Operating Systems 29
30 Simple Messaging (2/3) Once you ve unpacked the message payload, it can contain more fields: This allows for a layered approach: Network code Message creation code Pass through a chain of handlers 4/23/18 CS 326: Operating Systems 30
31 Simple Messaging (3/3) If you don t need advanced features, size prefixed messages work well Exceptions: You d like to avoid reading the entire message before you start processing it You don t even need to process the whole message (perhaps you are forwarding it somewhere else) Network wire formats have a huge range of features and complexity 4/23/18 CS 326: Operating Systems 31
32 Serialization Serialization transforms an object, structure, or application state into a format for transmission (and often storage to disk) Most common: binary formats Better performance When you receive a serialized message, transforming it back into its original representation is called deserialization 4/23/18 CS 326: Operating Systems 32
33 Our Message Format I d recommend you include length and type fields at the start of your messages You can use structs to make this easier However, they should be packed Read in the length, which tells you how many more bytes to read before the message is complete Use a switch/if-else block on the type: If (type == 4) { /* handle message type 4 */ } Else if (type == 5) { /* handle message type 5 */ } 4/23/18 CS 326: Operating Systems 33
34 Struct Packing If we have a struct with two integers and a 24- character char array, then we can make some guesses as to how it looks in memory However, there is no guarantee of order or size The C compiler may decide to pad the struct for performance reasons We can pack our structs to ensure what we see is what we get. We ll use this in HW6 4/23/18 CS 326: Operating Systems 34
Today s Agenda. Today s Agenda 9/8/17. Networking and Messaging
CS 686: Special Topics in Big Data Networking and Messaging Lecture 7 Today s Agenda Project 1 Updates Networking topics in Big Data Message formats and serialization techniques CS 686: Big Data 2 Today
More informationCSCI Computer Networks
CSCI-1680 - Computer Networks Chen Avin (avin) Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti, Peterson & Davie, Rodrigo Fonseca Administrivia Sign and hand in Collaboration
More informationELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition
ELEC / COMP 177 Fall 2014 Some slides from Kurose and Ross, Computer Networking, 5 th Edition Project #1 Starts in one week Is your Linux environment all ready? Bring your laptop Work time after quick
More informationEE 122: IP Forwarding and Transport Protocols
EE 1: IP Forwarding and Transport Protocols Ion Stoica (and Brighten Godfrey) TAs: Lucian Popa, David Zats and Ganesh Ananthanarayanan http://inst.eecs.berkeley.edu/~ee1/ (Materials with thanks to Vern
More informationECE 650 Systems Programming & Engineering. Spring 2018
ECE 650 Systems Programming & Engineering Spring 2018 Networking Transport Layer Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) TCP/IP Model 2 Transport Layer Problem solved:
More informationPage 1. Goals for Today" Discussion" Example: Reliable File Transfer" CS162 Operating Systems and Systems Programming Lecture 11
Goals for Today" CS162 Operating Systems and Systems Programming Lecture 11 Reliability, Transport Protocols" Finish e2e argument & fate sharing Transport: TCP/UDP Reliability Flow control October 5, 2011
More informationCS455: Introduction to Distributed Systems [Spring 2018] Dept. Of Computer Science, Colorado State University
CS 455: INTRODUCTION TO DISTRIBUTED SYSTEMS [NETWORKING] Shrideep Pallickara Computer Science Colorado State University Frequently asked questions from the previous class survey Why not spawn processes
More informationNetworking and Internetworking 1
Networking and Internetworking 1 Today l Networks and distributed systems l Internet architecture xkcd Networking issues for distributed systems Early networks were designed to meet relatively simple requirements
More informationComputer Communication Networks Midterm Review
Computer Communication Networks Midterm Review ICEN/ICSI 416 Fall 2018 Prof. Aveek Dutta 1 Instructions The exam is closed book, notes, computers, phones. You can use calculator, but not one from your
More informationBasic Reliable Transport Protocols
Basic Reliable Transport Protocols Do not be alarmed by the length of this guide. There are a lot of pictures. You ve seen in lecture that most of the networks we re dealing with are best-effort : they
More informationTransport layer Internet layer
Lecture 2-bis. 2 Transport Protocols As seen by the application developer point of view The primary (in principle unique) role of transport protocols!" # $ % "!"& Transport httpd 25 80 3211... My app 131.175.15.1
More informationTransport Layer. The transport layer is responsible for the delivery of a message from one process to another. RSManiaol
Transport Layer Transport Layer The transport layer is responsible for the delivery of a message from one process to another Types of Data Deliveries Client/Server Paradigm An application program on the
More informationLast Time. Internet in a Day Day 2 of 1. Today: TCP and Apps
Internet in a Day Day 2 of 1 Carnegie Mellon University 15-440, Distributed Systems Last Time Modularity, Layering, and Decomposition Example: UDP layered on top of IP to provide application demux ( ports
More informationThe Transmission Control Protocol (TCP)
The Transmission Control Protocol (TCP) Application Services (Telnet, FTP, e-mail, WWW) Reliable Stream Transport (TCP) Unreliable Transport Service (UDP) Connectionless Packet Delivery Service (IP) Goals
More informationNetwork Layer (1) Networked Systems 3 Lecture 8
Network Layer (1) Networked Systems 3 Lecture 8 Role of the Network Layer Application Application The network layer is the first end-to-end layer in the OSI reference model Presentation Session Transport
More informationCS 3640: Introduction to Networks and Their Applications
CS 3640: Introduction to Networks and Their Applications Fall 2018, Lecture 2: More layering and the end-to-end principle. Instructor: Rishab Nithyanand Teaching Assistant: Md. Kowsar Hossain 1 Today in
More informationTransport Protocols Reading: Sections 2.5, 5.1, and 5.2. Goals for Todayʼs Lecture. Role of Transport Layer
Transport Protocols Reading: Sections 2.5, 5.1, and 5.2 CS 375: Computer Networks Thomas C. Bressoud 1 Goals for Todayʼs Lecture Principles underlying transport-layer services (De)multiplexing Detecting
More informationNo book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6
Announcements No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Copyright c 2002 2017 UMaine School of Computing and Information S 1 / 33 COS 140:
More informationAnnouncements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6
Announcements No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6 Copyright c 2002 2017 UMaine Computer Science Department 1 / 33 1 COS 140: Foundations
More informationOutline. Inter-Process Communication. IPC across machines: Problems. CSCI 4061 Introduction to Operating Systems
Outline CSCI 4061 Introduction to Operating Systems ing Overview Layering and Protocols TCP/IP Protocol Family Client-Server Model Instructor: Abhishek Chandra 2 Inter-Process Communication Intra-node:
More informationNetwork Management & Monitoring
Network Management & Monitoring Network Delay These materials are licensed under the Creative Commons Attribution-Noncommercial 3.0 Unported license (http://creativecommons.org/licenses/by-nc/3.0/) End-to-end
More informationECE 650 Systems Programming & Engineering. Spring 2018
ECE 650 Systems Programming & Engineering Spring 2018 Programming with Network Sockets Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) Sockets We ve looked at shared memory vs.
More informationAsync Programming & Networking. CS 475, Spring 2018 Concurrent & Distributed Systems
Async Programming & Networking CS 475, Spring 2018 Concurrent & Distributed Systems Review: Resource Metric Processes images Camera Sends images Image Service 2 Review: Resource Metric Processes images
More informationCSCE 463/612 Networks and Distributed Processing Spring 2018
CSCE 463/612 Networks and Distributed Processing Spring 2018 Introduction Dmitri Loguinov Texas A&M University January 23, 2018 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1 Updates Recv
More informationChapter 6. What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control
Chapter 6 What happens at the Transport Layer? Services provided Transport protocols UDP TCP Flow control Congestion control OSI Model Hybrid Model Software outside the operating system Software inside
More informationLecture 2 Communication services The Trasport Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it
Lecture 2 Communication services The Trasport Layer Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it The structure edge: applications and hosts core: routers of s access s, media:
More informationCommunication Networks
Communication Networks Spring 2018 Laurent Vanbever nsg.ee.ethz.ch ETH Zürich (D-ITET) April 30 2018 Materials inspired from Scott Shenker & Jennifer Rexford Last week on Communication Networks We started
More informationNET ID. CS519, Prelim (March 17, 2004) NAME: You have 50 minutes to complete the test. 1/17
CS519, Prelim (March 17, 2004) NAME: You have 50 minutes to complete the test. 1/17 Q1. 2 points Write your NET ID at the top of every page of this test. Q2. X points Name 3 advantages of a circuit network
More informationTransport Over IP. CSCI 690 Michael Hutt New York Institute of Technology
Transport Over IP CSCI 690 Michael Hutt New York Institute of Technology Transport Over IP What is a transport protocol? Choosing to use a transport protocol Ports and Addresses Datagrams UDP What is a
More informationThe evasive speed of your Internet
The evasive speed of your Internet 2018 Charter Communications. All rights reserved. Not all products, pricing and services are available in all areas. Pricing and actual speeds may vary. Restrictions
More informationLecture - 14 Transport Layer IV (Reliability)
Computer Networks and Internet Protocol Prof. Sandip Chakraborthy Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 14 Transport Layer IV (Reliability)
More informationAnnouncements. IP Forwarding & Transport Protocols. Goals of Today s Lecture. Are 32-bit Addresses Enough? Summary of IP Addressing.
IP Forwarding & Transport Protocols EE 122: Intro to Communication Networks Fall 2007 (WF 4-5:30 in Cory 277) Vern Paxson TAs: Lisa Fowler, Daniel Killebrew & Jorge Ortiz http://inst.eecs.berkeley.edu/~ee122/
More informationIT 341: Introduction to System
IT 341: Introduction to System Administration Private IP Addresses and the Internet Using IP Addresses to Communicate Over the Internet Network Address Translation Private IP Addresses and the Internet
More informationCS457 Transport Protocols. CS 457 Fall 2014
CS457 Transport Protocols CS 457 Fall 2014 Topics Principles underlying transport-layer services Demultiplexing Detecting corruption Reliable delivery Flow control Transport-layer protocols User Datagram
More informationTransport Protocols Reading: Sections 2.5, 5.1, and 5.2
Transport Protocols Reading: Sections 2.5, 5.1, and 5.2 CE443 - Fall 1390 Acknowledgments: Lecture slides are from Computer networks course thought by Jennifer Rexford at Princeton University. When slides
More informationETSF10 Internet Protocols Transport Layer Protocols
ETSF10 Internet Protocols Transport Layer Protocols 2012, Part 2, Lecture 2.1 Kaan Bür, Jens Andersson Transport Layer Protocols Process-to-process delivery [ed.4 ch.23.1] [ed.5 ch.24.1] Transmission Control
More informationUnit 2.
Unit 2 Unit 2 Topics Covered: 1. PROCESS-TO-PROCESS DELIVERY 1. Client-Server 2. Addressing 2. IANA Ranges 3. Socket Addresses 4. Multiplexing and Demultiplexing 5. Connectionless Versus Connection-Oriented
More informationCS4700/CS5700 Fundamentals of Computer Networks
CS4700/CS5700 Fundamentals of Computer Networks Lecture 14: TCP Slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang Alan Mislove amislove at ccs.neu.edu Northeastern
More informationCOMS Introduction to Computers. Networking
COMS 1001 Introduction to Computers Networking What's Ahead Networking layers Network Speeds Protocols, sockets, client/server Routing, DNS, Ethernet, LANs, wireless What is a Network? Loose definition:
More informationLecture 05 Application Layer - I
Computer Networks and Internet Protocol Prof. Soumya Kanti Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 05 Application Layer - I Hi. So, we will
More informationNetwork Software Implementations
Network Software Implementations Number of computers on the Internet doubling yearly since 1981, nearing 200 million Estimated that more than 600 million people use the Internet Number of bits transmitted
More informationUser Datagram Protocol
Topics Transport Layer TCP s three-way handshake TCP s connection termination sequence TCP s TIME_WAIT state TCP and UDP buffering by the socket layer 2 Introduction UDP is a simple, unreliable datagram
More informationUNIX Sockets. Developed for the Azera Group By: Joseph D. Fournier B.Sc.E.E., M.Sc.E.E.
UNIX Sockets Developed for the Azera Group By: Joseph D. Fournier B.Sc.E.E., M.Sc.E.E. Socket and Process Communication application layer User Process Socket transport layer (TCP/UDP) network layer (IP)
More informationNWEN 243. Networked Applications. Layer 4 TCP and UDP
NWEN 243 Networked Applications Layer 4 TCP and UDP 1 About the second lecturer Aaron Chen Office: AM405 Phone: 463 5114 Email: aaron.chen@ecs.vuw.ac.nz Transport layer and application layer protocols
More information14-740: Fundamentals of Computer and Telecommunication Networks
14-740: Fundamentals of Computer and Telecommunication Networks Fall 2018 Quiz #2 Duration: 75 minutes ANSWER KEY Name: Andrew ID: Important: Each question is to be answered in the space provided. Material
More informationQuestion Score 1 / 19 2 / 19 3 / 16 4 / 29 5 / 17 Total / 100
NAME: Login name: Computer Science 461 Midterm Exam March 10, 2010 3:00-4:20pm This test has five (5) questions. Put your name on every page, and write out and sign the Honor Code pledge before turning
More informationHomework 1. Question 1 - Layering. CSCI 1680 Computer Networks Fonseca
CSCI 1680 Computer Networks Fonseca Homework 1 Due: 27 September 2012, 4pm Question 1 - Layering a. Why are networked systems layered? What are the advantages of layering? Are there any disadvantages?
More informationTransmission Control Protocol. ITS 413 Internet Technologies and Applications
Transmission Control Protocol ITS 413 Internet Technologies and Applications Contents Overview of TCP (Review) TCP and Congestion Control The Causes of Congestion Approaches to Congestion Control TCP Congestion
More informationCS 43: Computer Networks. 15: Transport Layer & UDP October 5, 2018
CS 43: Computer Networks 15: Layer & UDP October 5, 2018 Reading Quiz Lecture 15 - Slide 2 Layer Moving down a layer. Current perspective: lication is the boss Usually executing within the OS kernel. The
More informationA Client-Server Exchange
Socket programming A Client-Server Exchange A server process and one or more client processes Server manages some resource. Server provides service by manipulating resource for clients. 1. Client sends
More informationAnnouncements. TAs office hours: Mohamed Grissa: Mohamed Alkalbani:
Announcements TAs office hours: Mohamed Grissa: grissam@oregonstate.edu Tuesday: 4-5 Friday: 11-12 Mohamed Alkalbani: alkalbmo@oregonstate.edu Wednesday: 11-12 Thursday: 11-12 Lecture slides: Will be posted
More informationCS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 19: Networks and Distributed Systems
S 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring 2004 Lecture 19: Networks and Distributed Systems 19.0 Main Points Motivation for distributed vs. centralized systems
More informationReliable File Transfer
Due date Wednesday, Mar 14, 11:59pm Reliable File Transfer CS 5565 Spring 2012, Project 2 This project is worth 100 points. You may form teams of up to two students for this project. You are not required
More information416 Distributed Systems. Networks review; Day 2 of 2 Fate sharing, e2e principle And start of RPC Jan 10, 2018
416 Distributed Systems Networks review; Day 2 of 2 Fate sharing, e2e principle And start of RPC Jan 10, 2018 1 Last Time Modularity, Layering, and Decomposition Example: UDP layered on top of IP to provide
More informationCS519: Computer Networks. Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing
: Computer Networks Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing Recall our protocol layers... ... and our protocol graph IP gets the packet to the host Really
More information(Refer Slide Time: 1:09)
Computer Networks Prof. S. Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecturer # 30 UDP and Client Server Good day, today we will start our discussion
More informationBasics of datacommunication
Data communication I Lecture 1 Course Introduction About the course Basics of datacommunication How is information transported between digital devices? Essential data communication protocols Insight into
More informationChapter 7. Local Area Network Communications Protocols
Chapter 7 Local Area Network Communications Protocols The Network Layer The third layer of the OSI Model is the network layer. The network layer is concerned with providing a means for hosts to communicate
More informationApplied Networks & Security
Applied Networks & Security TCP/IP Protocol Suite http://condor.depaul.edu/~jkristof/it263/ John Kristoff jtk@depaul.edu IT 263 Spring 2006/2007 John Kristoff - DePaul University 1 ARP overview datalink
More informationQUIZ: Longest Matching Prefix
QUIZ: Longest Matching Prefix A router has the following routing table: 10.50.42.0 /24 Send out on interface Z 10.50.20.0 /24 Send out on interface A 10.50.24.0 /22 Send out on interface B 10.50.20.0 /22
More informationCS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring Lecture 21: Network Protocols (and 2 Phase Commit)
CS 162 Operating Systems and Systems Programming Professor: Anthony D. Joseph Spring 2003 Lecture 21: Network Protocols (and 2 Phase Commit) 21.0 Main Point Protocol: agreement between two parties as to
More informationInter-Process Communication
CS 326: Operating Systems Inter-Process Communication Lecture 10 Today s Schedule Shared Memory Pipes 2/28/18 CS 326: Operating Systems 2 Today s Schedule Shared Memory Pipes 2/28/18 CS 326: Operating
More information19: Networking. Networking Hardware. Mark Handley
19: Networking Mark Handley Networking Hardware Lots of different hardware: Modem byte at a time, FDDI, SONET packet at a time ATM (including some DSL) 53-byte cell at a time Reality is that most networking
More informationIntroduction to computer networking
edge core Introduction to computer networking Comp Sci 3600 Security Outline edge core 1 2 edge 3 core 4 5 6 The edge core Outline edge core 1 2 edge 3 core 4 5 6 edge core Billions of connected computing
More informationCSE 461 Module 10. Introduction to the Transport Layer
CSE 461 Module 10 Introduction to the Transport Layer Last Time We finished up the Network layer Internetworks (IP) Routing (DV/RIP, LS/OSPF, BGP) It was all about routing: how to provide end-to-end delivery
More informationCSE 123A Computer Networks
CSE 123A Computer Networks Winter 2005 Lecture 14 Congestion Control Some images courtesy David Wetherall Animations by Nick McKeown and Guido Appenzeller The bad news and the good news The bad news: new
More informationCSE 461: Computer Networks John Zahorjan Justin Chan Rajalakshmi Nandkumar CJ Park
CSE 461: Computer Networks John Zahorjan zahorjan@cs Justin Chan jucha@cs Rajalakshmi Nandkumar rajaln@cs CJ Park cjparkuw@cs Course Staff Grading Assignments/Projects/Homeworks: 55% Midterm: 15% Final:
More informationCS 428/528 Computer Networks Lecture 01. Yan Wang
1 CS 428/528 Computer Lecture 01 Yan Wang 2 Motivation: Why bother? Explosive growth of networks 1989, 100,000 hosts on the Internet Distributed Applications and Systems E-mail, WWW, multimedia, distributed
More informationGoals for Today s Class. EE 122: Networks & Protocols. What Global (non-digital) Communication Network Do You Use Every Day?
Goals for Today s Class EE 122: & Protocols Ion Stoica TAs: Junda Liu, DK Moon, David Zats http://inst.eecs.berkeley.edu/~ee122/fa09 (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues
More informationPart 1: Introduction. Goal: Review of how the Internet works Overview
Part 1: Introduction Goal: Review of how the Internet works Overview Get context Get overview, feel of the Internet Application layer protocols and addressing Network layer / Routing Link layer / Example
More informationECE 435 Network Engineering Lecture 10
ECE 435 Network Engineering Lecture 10 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 28 September 2017 Announcements HW#4 was due HW#5 will be posted. midterm/fall break You
More informationCS 43: Computer Networks. 19: TCP Flow and Congestion Control October 31, Nov 2, 2018
CS 43: Computer Networks 19: TCP Flow and Congestion Control October 31, Nov 2, 2018 Five-layer Internet Model Application: the application (e.g., the Web, Email) Transport: end-to-end connections, reliability
More informationCS 43: Computer Networks. 16: Reliable Data Transfer October 8, 2018
CS 43: Computer Networks 16: Reliable Data Transfer October 8, 2018 Reading Quiz Lecture 16 - Slide 2 Last class We are at the transport-layer protocol! provide services to the application layer interact
More informationECE 435 Network Engineering Lecture 17
ECE 435 Network Engineering Lecture 17 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 7 November 2016 Announcements HW#6 graded, HW#8 on Wednesday Plumbers wrapup Not much network
More informationInterprocess Communication Mechanisms
Interprocess Communication 1 Interprocess Communication Mechanisms shared storage These mechanisms have already been covered. examples: shared virtual memory shared files processes must agree on a name
More informationLecture 20 Overview. Last Lecture. This Lecture. Next Lecture. Transport Control Protocol (1) Transport Control Protocol (2) Source: chapters 23, 24
Lecture 20 Overview Last Lecture Transport Control Protocol (1) This Lecture Transport Control Protocol (2) Source: chapters 23, 24 Next Lecture Internet Applications Source: chapter 26 COSC244 & TELE202
More informationshared storage These mechanisms have already been covered. examples: shared virtual memory message based signals
Interprocess Communication 1 Interprocess Communication Mechanisms shared storage These mechanisms have already been covered. examples: shared virtual memory shared files processes must agree on a name
More informationInternetworking Models The OSI Reference Model
Internetworking Models When networks first came into being, computers could typically communicate only with computers from the same manufacturer. In the late 1970s, the Open Systems Interconnection (OSI)
More informationTen most important ideas/concepts to take away from Chapter 1
Ten most important ideas/concepts to take away from Chapter 1 Nuts and bolts of computer networks: Computer networks consist of end systems, packet switches, and communication links. End systems also called
More informationUDP and TCP. Introduction. So far we have studied some data link layer protocols such as PPP which are responsible for getting data
ELEX 4550 : Wide Area Networks 2015 Winter Session UDP and TCP is lecture describes the two most common transport-layer protocols used by IP networks: the User Datagram Protocol (UDP) and the Transmission
More informationYour Name: Your student ID number:
CSC 573 / ECE 573 Internet Protocols October 11, 2005 MID-TERM EXAM Your Name: Your student ID number: Instructions Allowed o A single 8 ½ x11 (front and back) study sheet, containing any info you wish
More informationIntroduction to Computer Systems. Networks 2. c Theodore Norvell. The Sockets API
The Sockets API [Wait! If you are not familiar with file descriptors and the UNIX read and write system calls, read chapter 10 of Bryant and O Hallaron and/or my summary before going on.] In this section
More informationProgramming Assignment 3: Transmission Control Protocol
CS 640 Introduction to Computer Networks Spring 2005 http://www.cs.wisc.edu/ suman/courses/640/s05 Programming Assignment 3: Transmission Control Protocol Assigned: March 28,2005 Due: April 15, 2005, 11:59pm
More informationCN1047 INTRODUCTION TO COMPUTER NETWORKING CHAPTER 6 OSI MODEL TRANSPORT LAYER
CN1047 INTRODUCTION TO COMPUTER NETWORKING CHAPTER 6 OSI MODEL TRANSPORT LAYER Transport Layer The Transport layer ensures the reliable arrival of messages and provides error checking mechanisms and data
More informationLecture 13: Transportation layer
Lecture 13: Transportation layer Contents Goals of transportation layer UDP TCP Port vs. Socket QoS AE4B33OSS Lecture 12 / Page 2 Goals of transportation layer End-to-end communication Distinguish different
More informationUNIT IV -- TRANSPORT LAYER
UNIT IV -- TRANSPORT LAYER TABLE OF CONTENTS 4.1. Transport layer. 02 4.2. Reliable delivery service. 03 4.3. Congestion control. 05 4.4. Connection establishment.. 07 4.5. Flow control 09 4.6. Transmission
More informationInternet Architecture & Performance. What s the Internet: nuts and bolts view
Internet Architecture & Performance Internet, Connection, Protocols, Performance measurements What s the Internet: nuts and bolts view millions of connected computing devices: hosts, end systems pc s workstations,
More informationPLEASE READ CAREFULLY BEFORE YOU START
Page 1 of 11 MIDTERM EXAMINATION #1 OCT. 16, 2013 COMPUTER NETWORKS : 03-60-367-01 U N I V E R S I T Y O F W I N D S O R S C H O O L O F C O M P U T E R S C I E N C E Fall 2013-75 minutes This examination
More informationCSE 333 Lecture 16 - network programming intro
CSE 333 Lecture 16 - network programming intro Hal Perkins Department of Computer Science & Engineering University of Washington Today Network programming - dive into the Berkeley / POSIX sockets API -
More informationI/O Handling. ECE 650 Systems Programming & Engineering Duke University, Spring Based on Operating Systems Concepts, Silberschatz Chapter 13
I/O Handling ECE 650 Systems Programming & Engineering Duke University, Spring 2018 Based on Operating Systems Concepts, Silberschatz Chapter 13 Input/Output (I/O) Typical application flow consists of
More informationCPS221 Lecture: Layered Network Architecture
CPS221 Lecture: Layered Network Architecture Objectives last revised 9/8/14 1. To discuss the OSI layered architecture model 2. To discuss the specific implementation of this model in TCP/IP Materials:
More informationThe Internet. Session 3 INST 301 Introduction to Information Science
The Internet Session 3 INST 301 Introduction to Information Science Outline The creation story What it is Exploring it Using it Outline The creation story What it is Exploring it Using it Source: Wikipedia
More informationWhy Your Application only Uses 10Mbps Even the Link is 1Gbps?
Why Your Application only Uses 10Mbps Even the Link is 1Gbps? Contents Introduction Background Information Overview of the Issue Bandwidth-Delay Product Verify Solution How to Tell Round Trip Time (RTT)
More informationMemory-Mapped Files. generic interface: vaddr mmap(file descriptor,fileoffset,length) munmap(vaddr,length)
File Systems 38 Memory-Mapped Files generic interface: vaddr mmap(file descriptor,fileoffset,length) munmap(vaddr,length) mmap call returns the virtual address to which the file is mapped munmap call unmaps
More informationTwo approaches to Flow Control. Cranking up to speed. Sliding windows in action
CS314-27 TCP: Transmission Control Protocol IP is an unreliable datagram protocol congestion or transmission errors cause lost packets multiple routes may lead to out-of-order delivery If senders send
More information>>> SOLUTIONS <<< Answer the following questions regarding the basics principles and concepts of networks.
Midterm Exam for Computer Networks (CNT 625) Fall 24 >>> SOLUTIONS
More informationLecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren
Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren Lecture 21 Overview" How fast should a sending host transmit data? Not to fast, not to slow, just right Should not be faster than
More informationSockets 15H2. Inshik Song
Sockets 15H2 Inshik Song Internet CAU www server (www.cau.ac.kr) Your web browser (Internet Explorer/Safari) Sockets 2 How do we find the server? Every computer on the Internet has an Internet address.
More informationLecture 2: Internet Structure
Lecture 2: Internet Structure COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016, J.F Kurose and K.W. Ross,
More informationCNBK Communications and Networks Lab Book: Purpose of Hardware and Protocols Associated with Networking Computer Systems
Lab Book: Purpose of Hardware and Protocols Associated with Networking Computer Systems Contents Purpose of Hardware and Protocols Associated with Computer Networks... 3 Lab Objectives... 3 Lab Resources...
More information