CS2911 Week 3, Class 2 Today Return Lab 3 Afternoon section: Hand out Lab 4 Checklist Review Muddiest Point Questions on Lab 4? What is a protocol? The.

Slides:



Advertisements
Similar presentations
Introduction 1-1 Chapter 3 Transport Layer Intro and Multiplexing Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.
Advertisements

COEN 445 Communication Networks and Protocols Lab 4
1 Java Networking – Part I CS , Spring 2008/9.
© 2004, Robert K. Moniot Chapter 1 Introduction to Computers and the Internet.
TCP Sockets Reliable Communication. TCP As mentioned before, TCP sits on top of other layers (IP, hardware) and implements Reliability In-order delivery.
Rhys McBreen (How the internet works) X. Contents The Layers and what they do IP Addressing X.
 TCP/IP is the communication protocol for the Internet  TCP/IP defines how electronic devices should be connected to the Internet, and how data should.
Internet Concept and Terminology. The Internet The Internet is the largest computer system in the world. The Internet is often called the Net, the Information.
Application Layer 2-1 Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012.
CS2910 Week 1, Class 2 Today Announce Prof. Michael Vieau’s S-341 6p Thurs Wk 2 Assignment for tomorrow Data Encoding, Part 1 Parsing Data Muddiest Point.
CS2910 Week 1, Class 1 Today Introductions Class/Lab Layout Safety Review - Note about Lab Safety Review Announce Prof. Michael Vieau’s S-341 6p Thurs.
ECEN “Internet Protocols and Modeling”, Spring 2012 Course Materials: Papers, Reference Texts: Bertsekas/Gallager, Stuber, Stallings, etc Class.
CS2910 Week 2, Class 1 Today Data Encoding, Part 1 Parsing Data Python Muddiest Point Lab 2 – Bring text In Class, Thursday: Quiz Week 6, Monday: Midterm.
Transport Layer3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley,
CS2910 Week 5, Class 2 Today DNS Muddy Points More HTTP Headers Review for Midterm Exam This coming Monday: Midterm Exam SE-2811 Slide design: Dr. Mark.
CS2910 Week 2, Class 1 Today Return Lab 1 Muddiest Points Quiz Parsing Data in Python SE-2811 Slide design: Dr. Mark L. Hornick Content: Dr. Hornick Errors:
Data Communications and Computer Networks Chapter 2 CS 3830 Lecture 7 Omar Meqdadi Department of Computer Science and Software Engineering University of.
CS2910 Week 4, Class 1 Today Encoding in Python – Review Quiz – Encoding in Python Introduction to HTTP SE-2811 Slide design: Dr. Mark L. Hornick Content:
4343 X2 – The Transport Layer Tanenbaum Ch.6.
CS2910 Week 4, Class 2 Today Sit by someone you have not yet worked with this quarter. Learn his/her name if unknown. Turn on your laptop and start Wireshark.
CS2910 Week 3, Class 1 Today What is a protocol? Using TCP in Python Defining methods in Python Long procedure design SE-2811 Slide design: Dr. Mark L.
CS2910 Week 8, Class 2 Today Return Quiz Look at Schedule TCP implementation! Week 8, Monday Quiz on SMTP May include some questions requiring you to interpret.
Ch. 23, 25 Q and A (NAT and UDP) Victor Norman IS333 Spring 2015.
CS2911 Week 6, Lab Today Quiz 3 Review Muddiest Point Finish Lab 6 Start Lab 7 Muddiest Point This week, Lab: Quiz at start of lab Week 7, Monday: Half-Exam.
CS299: Web Programming and Design Instructor: Dr. Fang (Daisy) Tang
Web fundamentals: Clients, Servers, and Communication
Chapter 3 Transport Layer
Introduction to Networks
Chapter 3 Transport Layer
Transport Layer Slides are originally from instructor: Carey Williamson at University of Calgary Very minor modification are made Notes derived from “Computer.
Block 5: An application layer protocol: HTTP
Chapter 3 outline 3.1 Transport-layer services
A quick intro to networking
Slides taken from: Computer Networking by Kurose and Ross
CISC103 Web Development Basics: Web site:
Slide design: Dr. Mark L. Hornick
Network Architecture Layered system with alternative abstractions available at a given layer.
Web Languages What Is a Web Page?
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
06- Transport Layer Transport Layer.
Slide design: Dr. Mark L. Hornick
Vocabulary Prototype: A preliminary sketch of an idea or model for something new. It’s the original drawing from which something real might be built or.
HTTP: the hypertext transfer protocol
CS 1652 Jack Lange University of Pittsburgh
Introduction to Networks
Subject Name: Computer Communication Networks Subject Code: 10EC71
Transport Layer Our goals:
Web Languages What Is a Web Page?
CISC103 Web Development Basics: Web site:
Topic 5: Communication and the Internet
September 19th, 2013 CS1652 Jack Lange University of Pittsburgh
Slide design: Dr. Mark L. Hornick
HTTP Hypertext Transfer Protocol
Web Design & Development
Process-to-Process Delivery:
CSCD 330 Network Programming
CS2911 Week 5, Class 3 Today Week 6, Lab: Quiz at start of lab
Slide design: Dr. Mark L. Hornick
CS2911 Week 2, Class 3 Today Return Lab 2 and Quiz 1
CS2911 Week 3, Class 3 (And wk4-c1)
HTTP Hypertext Transfer Protocol
CS2911 Week 3, Lab Today Thursday Friday Review Muddiest Point Lab 3
Slide design: Dr. Mark L. Hornick
Chapter 3 Transport Layer
Slide design: Dr. Mark L. Hornick
Exceptions and networking
Transport Layer Our goals:
Message Passing Systems
Presentation transcript:

CS2911 Week 3, Class 2 Today Return Lab 3 Afternoon section: Hand out Lab 4 Checklist Review Muddiest Point Questions on Lab 4? What is a protocol? The HTTP protocol Muddiest Point Thursday Friday (tomorrow) Quiz 2: Encoding in Python 1 CS2911 Dr. Yoder

Quiz tomorrow Topics: Encoding in Python Binary representations Parsing messages CS2911 Dr. Yoder 2

Muddiest Point 3-1 Still feel confused about the differences between TCP and UDP.TCP vs UDP Are we writing the next_bytes method in our lab 3?Lab 3 Will we be expected to actually program a client and server in Python in class/labLabs Where are all the python code coming from? Are they all from our notes? For example, I did not remember the to_bytes thing. [class 2-1, slide 33]class slides An IPv6 packet walks into a bar. Nobody talks to himjoke Does 'host' mean client?terminology What happens if you do not close the socket?sockets Is the code from the slides today sort of what we need to gear towards in our lab code?Lab 3 3

Muddiest Point 3-1 Could you walk the class through how to solve and write the Python code in the last exercise we did? Storing 2000 as a 2 byte big-endian raw binary number? encoding in python The great thing about TCP jokes is that you always get them.joke What kind of labs can we expect later in the course? Are we going to get into setting up a sever that can actually handle multiple clients at once? [Yes, but multithreading code is provided]Labs 4-10 Where is the socket located? Built into the application layer, or known by the socket?sockets A TCP packet walks in to a bar and says "I want a beer", barman says "you want a beer?" and TCP packet says "yes, a beer".joke 4

Muddiest Point 3-1 Confused as to the way TCP demultiplexes. How is it sure it is ordering all the packets, and how is it sure if a packet hasn't been delivered? Does it require a return? tcp implementation still lost in Python encoding in python? I'd tell you a UDP joke but I don't know if you'd get itjoke Could you give more examples of coding in Python? [Please run example code from slides in Python Console] encoding in python? characterjoke what does listen_socket.accept() return?sockets from_bytes is still a little off to me, it doesn't seem to return what i expect yet encoding in python Does TCP make things easier for the application side of the client?sockets 5

Questions about Lab 4? TCP implementation? Extension to sending multiple files? Lab checklist / requirements? … CS2911 Dr. Yoder 6

TCP connection listen_socket.bind((listen_host,listen_port)) What python type is (listen_host,listen_port)? listen_host can be empty string ('') to listen on all interfaces department offices example Instead of data_socket.recv(…), simply use the next_byte calls you already have in your Lab 3 code. CS2911 Dr. Yoder 7

What is a protocol? A protocol is a predetermined agreement about how to communicate It defines message order format actions taken on message transmission / receipt timeout etc. SE-2811 Dr.Yoder 8

Exercise: What human protocols are followed or broken in this phone call? RvFLyDVl4&start=469&end=505&cid= CS2911 Dr. Yoder 9

HTTP HyperText Transfer Protocol Communication between browser and server Used for transmitting HTML (HyperText Markup Language), images, CSS (Cascaded Style Sheets), Javascript, exe installer downloads, etc. SE-2811 Dr.Yoder 10

RFC's RFC "Request for Comments" Internet Standards HTTP defined in RFC 1945 (HTTP1.0, "Informational",1996) RFC 2616 (HTTP1.1, "Draft Standard",1999) RFCs 7230,7231,7232,7233,7234, and 7235 (HTTP1.1, "Proposed Standard",2014) RFC 7540 (HTTP2, "Proposed Standard",2015) 11

At the transport layer Uses TCP for reliable, two-way transfer Always in pairs: Client sends request Server sends response Persistent: Multiple requests/responses over same TCP channel SE-2811 Dr.Yoder 12

The bits and bytes of HTTP HTTP is encoded in ASCII Headers Chunking control messages Everything! Except payload: HTTP allows arbitrary byte data in payload Could be text (ASCII, UTF-8, UTF-16, Latin-1) Could be images (binary encoding) Could be anything! (.exe,.jar,.wav,.mpg, …) SE-2811 Dr.Yoder 13

CS2911 Dr. Yoder 14

Acknowledgement This course is based on the text Computer Networking: A Top Down Approach 7 th edition Jim Kurose, Keith Ross Addison-Wesley 15