Administrivia

Lectures and assignments, second half.

Browse Course Material

Course info.

  • Prof. Hari Balakrishnan

Departments

  • Electrical Engineering and Computer Science

As Taught In

  • Computer Networks

Learning Resource Types

Assignments.

facebook

You are leaving MIT OpenCourseWare

  • Computer Science and Engineering
  • NOC:Computer Networks and Internet Protocol (Video) 
  • Co-ordinated by : IIT Kharagpur
  • Available from : 2018-04-26
  • Intro Video
  • Lecture 1 : Introduction to Computer Networks – A brief history
  • Lecture 2: Data Networks – from Circuit Switching Network to Packet Switching Network
  • Lecture 3 : Network Protocol Stack
  • Lecture 4 : Services at the Different Layers of the Protocol Stack
  • Lecture 5 : Application Layer I – Different Protocols at the Application Layer
  • Lecture 6: Application Layer II – Domain Name Systems
  • Lecture 7: Application Layer III – The Web
  • Lecture 8; Application Layer III – Hypertext Transfer Protocol
  • Lecture 9: Application Layer III – Internet Mail Transfer
  • Lecture 10: Application Layer IV – File Transfer (FTP)
  • Lecture 11: Transport Layer I – Services
  • Lecture 12: Transport Layer II - Connection
  • Lecture 13: Transport Layer II - Connection (Contd.)
  • Lecture 14: Transport Layer IV – Reliability
  • Lecture 15: Transport Layer V – Sliding Window Protocols
  • Lecture 16: Transport Layer Performance
  • Lecture 17 Buffer Management and Congestion Control
  • Lecture 18: Transport Layer Primitives
  • Lecture 19: Transmission Control Protocol I – Basics
  • Lecture 20: Transmission Control Protocol II – Connections
  • Lecture 21:Transmission Control Protocol III – Flow Control
  • Lecture 22: Transmission Control Protocol IV – Congestion Control
  • Lecture 23: User Datagram Protocol
  • Lecture 24: Socket Programming – I
  • Lecture 25: Socket Programming – II
  • Lecture 26: Network Layer I – Introduction
  • Lecture 27: IP Addressing (IPv4) I – Classful addressing
  • Lecture 28: IP Addressing (IPv4) II - CIDR
  • Lecture 29: IP Addressing (IPv4) III – Network Address Translation (NAT)
  • Lecture 30: IPv6 Addressing
  • Lecture 31: Internet QoS - I (What is QoS)
  • Lecture 32: Internet QoS - II (Basic QoS Architecture)
  • Lecture 33: Internet QoS - III (Traffic Policing and Traffic Shaping)
  • Lecture 34: Internet QoS - IV (Traffic Scheduling)
  • Lecture 35: Internet QoS - V (Integrated and Differentiated Service Architecture)
  • Lecture 36: IP Routing Table
  • Lecture 37: Routing in the Internet I – Intra-domain routing
  • Lecture 38: Routing in the Internet II - Routing protocols
  • Lecture 39: Routing in the Internet III – Inter-domain Routing
  • Lecture 40: Routing in the Internet IV – Border Gateway Protocol
  • Lecture 41 : IP Routers
  • Lecture 42 : IP Routers Demo
  • Lecture 43 : Software Defined Networking - I (Basics)
  • Lecture 44 : Software Defined Networking - II (Open Flow)
  • Lecture 45 : Software Defined Networking - III (Demo)
  • Lecture 46 : Data Link Layer - Overview
  • Lecture 47 : Data Link Layer - Basic Concepts
  • Lecture 48 : Data Link Layer - Ethernet
  • Lecture 49 : Data Link Layer - Ethernet(Contd.)
  • Lecture 50 : Data Link Layer - Flow and Error Control
  • Lecture 51 : ARP-RAPP-BOOTP-DHCP
  • Lecture 52 : ARP-RAPP-BOOTP-DHCP(Contd.)
  • Lecture 54 : Wireless LANs
  • Lecture 55 : Layer 1: Physical Layer
  • Lecture 56 : Layer 1: Physical Layer-II
  • Lecture 57 : Layer 1: Physical Layer-III
  • Lecture 58 : Network Security-Overview
  • Lecture 59 : Network Security-II
  • Lecture 60 : Network Security-III[TCP?IPSecurity]
  • Live Session 11-03-2020
  • Watch on YouTube
  • Assignments
  • Download Videos
  • Transcripts

Computer Networks

COS 461, Princeton University Spring 2019

Assignments

This course studies computer networks and protocols, the services built on top of them, and some topics relating to Internet policy. Topics include: packet switching, routing, congestion control, quality-of-service, network security, network measurement, network management, and network applications.

This course is "flipped", with mandatory instructional videos and optional class meetings with discussions, applications of course material to current Internet development and events, group work, and practice problems. Students will learn:

  • Internet protocols used in Internet access networks, local area networks, wide area networks
  • Internet services including Internet content delivery
  • Measurement, data analysis, and machine learning in managing network performance and security.

Contact: Prof. Nick Feamster 310 Sherrerd Hall <my last name>@cs.princeton.edu

  • Austin Hounsel
  • Arunesh Mathur
  • Trisha Datta
  • Leora Huebner
  • Nathan Mytelka

Class Location and Time: Lectures: Mondays and Wednesdays, 1:30-2:50 pm, Frist Campus Center 302

  • Nick: Mondays and Wednesdays 11a-12p (310 Sherrerd; sign up in advance )
  • Austin: TTR 2-3p (Sherrerd Hall Third Floor Open Space)
  • Arunesh: MW 4-5p (Sherrerd Hall Third Floor Open Space)

Course Format

The course will meet twice a week for 80-minute class meetings .

Each class meeting will contain discussion, activities, and material that assumes that you have watched the preparation videos in advance. Preparation may be tested without warning.

The primary assignments for the course will be lab-based programming assignments. We will also release weekly problem set exercises whose primary purpose is to help in preparation for the midterm and final exam; these problem sets may be graded at random.

Recommended Background

Prerequisite: COS 217. Although not required, and one of either COS 333, COS 418, or COS 432 prior to enrolling in the course (concurrent enrollement does not count). Note well: The assignments in this class are in Go, C, and Python. You do not need to have experience with all of these languages before taking the course. However, you should be comfortable with learning new programming languages and finding resources on your own, independently as you attack problems.

You will be exposed to new programming languages and environments. If you are not comfortable learning new programming languages and familiarizing yourself with new programming environments on your own, you will have difficulty in this course.

  • an in-class midterm (15%)
  • an in-class end-of-term exam (20%)
  • seven programming assignments (8% each, 16% for the last assignment)
  • participation (Piazza and in-class), in-class quizzes, pencil-and-paper "practice" assignments (1%)

Late Policy

  • You start the term with a grace period "balance" of 96 hours.
  • Each assignment will be due at 5:00 p.m. (Princeton Local Time) on the due date.
  • For each assignment, every hour late (or fraction thereof) that you turn in the assignment will subtract one hour from your grace-period balance. For example, if you turn in your assignment at 6:02 p.m. on the due date, we will count this as two hours against your grace period.
  • As long as your grace period balance is positive, you can turn in any assignment late without penalty.
  • Once your grace period balance reaches zero, you will receive half credit for any assignment that you turn in, as long as you turn it in within one week of the due date. If your grace period balance is zero and you turn in an assignment more than one week late, you will receive no credit for the assignment. Important: You must still turn in all assignments to pass the course, even if you receive zero points on an assignment. Turning in all assignments is a necessary condition for passing.

Students are expected to abide by the Princeton University Honor Code. Honest and ethical behavior is expected at all times. All incidents of suspected dishonesty will be reported to and handled by the office of student affairs. You are to do all assignments yourself, unless explicitly told otherwise. You may discuss the assignments with your classmates, but you may not copy any solution (or part of a solution) from a classmate.

Reading and Videos

Supplementary Videos: Prof. Feamster's Networking Videos .

  • Computer Networking (5th edition) , by Andrew Tanenbaum and David Wetherall
  • Computer Networking: A Top-Down Approach (6th edition) , by Jim Kurose and Keith Ross
  • Computer Networks: A Systems Approach , Larry Peterson and Bruce Davie
  • TCP/IP Illustrated, Volume 1: The Protocols and Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition)

This schedule and syllabus is preliminary and subject to change. Edits will be ongoing, but you can assume that all updates for the subsequent week will be completed by 5p ET of the Sunday prior to the week of instruction.

Readings: Abbreviations refer to the following:

  • TW: Tanenbaum/Wetherall (6th Edition - Draft)
  • KR: Kurose/Ross (6th edition)
  • PD: Peterson/Davie (open-source edition)

For Tanenbaum, the relevant excerpts will be posted on Blackboard, as part of revisions for the upcoming 6th edition. These readings are required. KW and PD readings are optional, unless otherwise specified.

Videos: In addition to the readings, we recommend watching the corresponding videos from the YouTube Playlist , before lecture.

Slides: All slides will be posted on Blackboard before class meeting.

Course Resources

  • Piazza Online Discussion Forum
  • Course Blackboard Page (Slides, readings, old midterms and exams (with solutions), and other course resources are posted here.)

Go Resources

  • Go Language Blog
  • defer and exception management
  • arrays and slices
  • formatting code
  • concurreny in practice
  • builtin identifiers
  • race detection
  • Go Language FAQ
  • Go Lecture by Rob Pike
  • Packet Processing in Go
  • Understanding Go Internals

Software Resources

  • VirtualBox Environment
  • Official virtual machine image (To be posted.)
  • Mininet Walkthrough

Going Further (Optional)

  • Various Online Reading from Professor Feamster
  • Connection Management Blog : Blog where various topics will be discussed during the course.
  • A Research "How To" Blog
  • Udacity Course Modules (some may be useful for additional explanation)

The following assignments below have been officially released.

We have linked the public repository, which contains assignments as they were released last year, for reference. Although the assignments will be similar, we advise against starting early on (last year's) assignments in the repository that haven't been officially released as these are still subject to change and update. Course staff will not answer questions on any assignments that have not yet been officially released.

  • Programming Assignment 1
  • Programming Assignment 2
  • Programming Assignment 3
  • Programming Assignment 4
  • Programming Assignment 5
  • Programming Assignment 6
  • Programming Assignment 7

Extra Credit Opportunities

Assignment maintenance.

All assignments are weighted according to the syllabus. There are opportunities for extra credit on this year's assignments, to encourage student contributions to keeping the material current.

  • One instructor endorsed Piazza post: 1% single assignment point bonus, up to a maximum of 10% bonus for each assignment.

All assignment concepts should be proposed and approved in advance by the instructors. Point bonuses are "all or nothing" and will be conferred upon successful pull request to the COS 461 github repository.

Reading Maintenance

Professor Feamster is revising the Tanenbaum and Wetherall book, and this term we will be using draft sections of the book for our readings.

Each error you discover in the reading material, typographical, conceptual, or otherwise will be worth a 1% assignment point bonus.

If you find a missing topic that you would like to see better covered in the book, we are open to suggestions. If you offer sufficient resources and material, extra credit will be conferred at the instructors' discretion, not to exceed a 5% assignment point bonus per suggestion.

IMAGES

  1. Network Assignment 2

    computer networking assignment pdf

  2. Networking Documentation

    computer networking assignment pdf

  3. computer network NCC l4dc assingment

    computer networking assignment pdf

  4. Networking Assignment

    computer networking assignment pdf

  5. (DOC) Introduction to computer networking Overview of Computer

    computer networking assignment pdf

  6. Networking online assignment

    computer networking assignment pdf

VIDEO

  1. ENCS3320 Computer Networks: Chapter1_4

  2. nptel computer networking and internet protocol assignment week 5 answers#nptelcourseanswers

  3. ENCS3320 Computer Networks: Chapter1_3

  4. ADVANCED COMPUTER NETWORKS

  5. Computer Networks

  6. Fundamentals of Computer Networks Assignment Presentation Video

COMMENTS

  1. PDF CS144

    All assignments are on the web page Text: Kurose & Ross, Computer Networking: A Top-Down Approach, 4th or 5th edition-Instructors working from 4th edition, either OK-Don't need lab manual or Ethereal (used book OK) Syllabus on web page-Gives which textbook chapters correspond to lectures (Lectures and book topics will mostly overlap)

  2. PDF Fundamentals Of Computer Networking And Internetworking

    Protocol Layering and Layering Models. Protocol Layering d Needed because communication is complex d Intended primarily for protocol designers

  3. PDF An Introduction to Computer Networks

    CONTENTS Preface 3 Second Edition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 Licensing ...

  4. PDF Chapter Computer Network 1 Types, Topologies, and the OSI Model

    The Campus Area Network. A campus area network (CAN) includes a set of interconnected LANs that basically form a smaller version of a wide area network (WAN) within a limited geographical area, usu-ally an offi ce or school campus. Each building within the campus generally has a separate LAN.

  5. PDF Computer Networking: The Complete Beginner's Guide to Learning the

    Computer Networking is simply the formation of a computer network. A computer network can be defined as the collection of computers, printers, and other equipment that are connected (wired or wireless), with the ultimate aim of fostering communications between the devices. The process of creating this connection of devices is known as Computer ...

  6. PDF Lecture 13: Intro To Networking CS110 Spring 2021

    Networking Every computer on a network has a unique IP address that identifies it on the network. When you want to connect to a server, you need to know its IP address. By convention, each of the four bytes in a 32-bit IP address is represented by its decimal value and separated by a period. An example IP address is "192.168.1.1".

  7. PDF Computer Networks Fundamentals

    WHAT IS A NETWORK? •A network is simply two or more computers that are linked together. •The most common types of networks are: Local Area Networks (LANS) and Wide Area Networks (WANS). •The primary difference between the two is that a LAN is generally confined to a limited geographical area, whereas a WAN covers a large geographical area.

  8. PDF Lecture 13: Introduction to Networking

    Lecture 13: Introduction to Networking Networking is simply communicating between two computers connected on a network. You can actually set up a network connection on a single computer, as well. A network requires one computer to act as the server , waiting patiently for an incoming connection from another computer, the client .

  9. CSE 473. Introduction to Computer Networks

    Fall 2013. This course provides a broad introduction to computer networking. It addresses all four major architectural layers of modern computer networks (application layer, transport layer, network layer and link layer), as well as selected topics from multimedia networking, wireless networking and network security.

  10. PDF A Practical Guide to Advanced Networking

    The Instructor's Manual to accompany A Practical Guide to Advanced Networking, (ISBN: 978--132-88303-0) provides the entire book in PDF format along with instructor notes for each section within each chapter, recom-mending key concepts that should be covered in each chapter.

  11. PDF Networking Fundamentals

    Network Data Link Physical The Seven Layers of the OSI Model (Cont.) Data Delivery: • Provides connectivity and path selection between two host systems • Routes data packets • Selects best path to deliver data • The Network layer prioritizes data known as Quality of Service (QoS)

  12. PDF C h a p 10 Computer Networks

    A computer network can include different types of hosts (also called nodes) like server, desktop, laptop, cellular phones. Networking Device. Figure 10.2: A computer network. Apart from computers, networks include networking devices like switch, router, modem, etc. Networking . devices are used to connect multiple computers in different settings.

  13. Assignments

    This section contains the problem set, useful files, FAQ and solution for each assignment. Browse Course Material Syllabus Calendar Readings ... Computer Networks. Menu. More Info Syllabus Calendar Readings Lecture Notes ... (PDF - 1.2 MB) Problem Set 2 AQM.tcl cwnd1.awk dtq.awk LFN.tcl loss.awk redq.awk ...

  14. PDF Data Communication and Networks: Assignment #6

    Assignment is neatly assembled on 8 1/2 by 11 paper. Cover page with your name (last name first followed by a comma then first name), username and section number with a signed statement of independent effort is included. Program and documentation submitted for Assignment #8 are satisfactory. File name is correct.

  15. PDF CS144

    • All assignments are on the web page • Text: Kurose & Ross, Computer Networking: A Top-Down Approach, 4th edition - Don't need lab manual or Ethereal (used book OK) • Syllabus on web page - Gives which textbook chapters correspond to lectures (Lectures and book topics will mostly overlap) - Extra (not required) questions for further ...

  16. PDF Computer Network Assignments

    COMPUTER NETWORK ASSIGNMENTS Assignments based on CS-333 (Computer Networks -I) and CS-343 (Computer Networks -II ) PREPARED BY: PROF. MS. POONAM PONDE (NOWROSJEE WADIA COLLEGE) PROF. JEEVAN LIMAYE (FERGUSSON COLLEGE) OBJECTIVES The objectives of these assignments are : a. To cover basic concepts of networking b.

  17. PDF Course Inform ation

    This course takes a top-down approach to computer networking. After an overview of computer networks and the Internet, the course covers the application layer, transport layer, network layer and link layers. Topics at the application layer include client-server architectures, P2P architectures, DNS and HTTP and Web applications. Topics at the

  18. NPTEL :: Computer Science and Engineering

    Lecture 1 : Introduction to Computer Networks â€" A brief history: Download: 2: Lecture 2: Data Networks â€" from Circuit Switching Network to Packet Switching Network: Download: 3: Lecture 3 : Network Protocol Stack: Download: 4: Lecture 4 : Services at the Different Layers of the Protocol Stack: Download: 5

  19. COS 461: Computer Networks

    This course studies computer networks and protocols, the services built on top of them, and some topics relating to Internet policy. Topics include: packet switching, routing, congestion control, quality-of-service, network security, network measurement, network management, and network applications. ... For each assignment, every hour late (or ...

  20. (PDF) Student Projects in Computer Networking ...

    Department of Mathematics and Computer Science. Hayward, CA 94542-3092, USA. ABSTRACT. In this paper, we discuss the advantages and. disadvantages of using network simulators to teach. networking ...

  21. Unit 2 Networking-Assignment

    Unit 2 Networking-Assignment (1) - Free download as Word Doc (.doc / .docx), PDF File (.pdf), Text File (.txt) or read online for free. Scribd is the world's largest social reading and publishing site.

  22. Networking Assignment

    Networking assignment - Free download as Open Office file (.odt), PDF File (.pdf), Text File (.txt) or read online for free. all you need to know about networks

  23. Networking Assignment

    Networking Assignment - Free download as PDF File (.pdf), Text File (.txt) or read online for free. Network is a set of devices (often referred to as nodes) connected by communication links. A popular example of a computer network is the internet, which allows millions of users to share information. Internet is a global system of interconnected computer networks that serve billions of users ...