Kurose Ross Programming Assignment Solutions Online

Course Information - Description - Prerequisites - Textbooks - Syllabus - Organization - Grading - Schedule, Notes & Assignments - Acknowledgment - ABET Criteria

  • Credits: 3.0
  • Lecture hours: Tuesday & Thursday, 2:30 - 3:45pm, SEM 261


Phone: (775) 327-2246

Web page:http://www.cse.unr.edu/~yuksem

Office: SEM 237 (Scrugham Engineering-Mines)

Office hours:

    • Tuesday, 9:30-10:30am
    • Wednesday, 11am-12pm
    • Thursday, 9:30-10:30am
    • or by appointment

Packet switching, routing, congestion control, network layer, Internet, transport layer, sessions, FTP, telnet, rlogin, SMTP, NFS, NetBIOS, WWW, security, data compression.

To develop an understanding of the various aspects of computer networking systems. Topics include: Socket programming, file transfer, electronic mail, WWW, peer-to-peer, multimedia networking, wireless and mobile protocols, network security, and network management.

  • CPE 400 Computer Communication Networks
  • CS 365 Mathematics of Computer Science
  • C/C++ or Java programming experience in a UNIX-like environment

Required Textbooks

Recommended Textbooks

This is a tentative list of topics, subject to modification and reorganization.

  1. Socket Programming
    • Network API
    • TCP Sockets
    • UDP Sockets
    • Advanced Sockets
    • Dynamic Web Documents
    • Common Gateway Interface

  1. Wireless and Mobile Networks
    • Wireless links (CDMA)
    • IEEE 802.11 wireless LANs (Wi-Fi)
    • Cellular Internet access
    • Mobile IP
    • Handling mobility
    • Sensor networks

  1. Overlay Networks
    • Routing overlays
    • Peer-to-peer networks
    • Content Distribution Networks
    • Cloud computing

  1. Network Security
    • Principles of cryptography
    • Message integrity (MAC)
    • Securing e-mail (PGP)
    • Securing TCP connections (SSL)
    • Network layer security (IPsec, VPN)
    • Securing wireless LANs (WEP)
    • Firewalls and IDS

  1. Network Management
    • Infrastructure for Network Management
    • Management Framework (SMI, MIB, ASN.1, SNMP)
    • Internet Measurements

  1. Multimedia Networking
    • Multimedia networking applications
    • Streaming stored audio and video (RTSP)
    • Making the best out of Best-Effort service
    • Protocols for real-time interactive applications (RTP, RTCP, SIP)
    • Providing multiple classes of service
    • Providing QoS guarantees
    • Traffic engineering

  • WebCampus   Except this web page, all course materials will be posted at the WebCampus.
  • Labs   There will be about five lab assignments where you will have hands-on experience with protocols and networking concepts. The lowest graded one will not affect your overall grade. Lectures for the lab assignments will be held in Reconfigurable Networking Lab in SEM 211A and provide you an opportunity to experiment with networking equipment.
  • Project   There will be a project involving quite a bit of programming in two phases. It will require turning in code that compiles and runs properly and a report documenting the code (specifications, implementation, user manual, etc.). Note that knowledge of C/C++ or Java is required for this programming project. It is expected that everyone is a good programmer and can develops well-structured and readable code.
  • Quizzes   There will be a few in-class quizzes. These quizzes will be extremely time-constrained, i.e., 15-30mins. The one with the lowest grade will not affect your overall grade.
  • Homework   There will not be homework assignments in this course. However, the students are expected to study the homework questions at the end of each chapter to perform well at the quizzes or the exams.
  • Late Policy   Late assignments will be penalized according to the sliding scale below. If I am not available, slide your assignment under my office door or email it to me as a softcopy.
  • ExamsThere will be one midterm exam and one final exam (see Schedule for tentative dates).
  • Academic Integrity   There will be no team projects or reports in this class, therefore all assignments and exams must be prepared strictly individually. Any form of cheating such as plagiarism or ghostwriting will incur a severe penalty, usually failure in the course. Please refer to the UNR policy on Academic Standards.
  • Disability Statement   If you have a disability for which you will need to request accommodations, please contact the instructor or someone at the Disability Resource Center (Thompson Student Services - 107) as soon as possible.
  • Important Policy   Surreptitious or covert videotaping of class or unauthorized audio recording of class is prohibited by law and by Board of Regents policy. This class may be videotaped or audio recorded only with the written permission of the instructor. In order to accommodate students with disabilities, some students may have been given permission to record class lectures and discussions. Therefore, students should understand that their comments during class may be recorded.

Both grading policy and scale are subject to change.

Grading Policy







Midterm Exam


Final Exam


Late Assignment Policy

less than 1 day late

25% deducted

between 1 and 2 days late

50% deducted

over 2 days late

100% deducted

Grading Scale (Tentative)

90% - 100%

A-, A

80% - 89%

B-, B, B+

65% - 79%

C-, C, C+

55% - 64%


0% - 54%


Note: Saturdays and Sundays do not count toward missed days. For example, there is 1 "day" between Friday, 2pm and Monday, 2pm. Similarly, there is 1 day between Monday, 2pm and Tuesday, 2pm.

Important Note: Re-grading requests can only be made within the first week after the graded assignments/tests are returned to the students.

This is a tentative schedule including the exam dates. It is subject to readjustment depending on the time we actually spend in class covering the topics. Slides presented in class and assignments will be posted at the WebCampus. See the acknowledgment for the course materials. Permanent reading assignment: it is assumed that you are familiar with the contents of the slides of all past meetings.



Assignments & Notes

Tue, Jan 22

Lecture #1: Introduction

Thu, Jan 24

Lecture #2: Socket Programming (1)

• Kurose & Ross, Ch. 2.7

Tue, Jan 29

Lecture #3: Socket Programming (2)

Thu, Jan 31

Lecture #4: Socket Programming (3)

Socket Programming FAQ

Tue, Feb 5

Lecture #5: Socket Programming (4)

Project is out

Thu, Feb 7

Lecture #6: Dynamic Web Servers

• Kurose & Ross, Ch. 2.2

Tue, Feb 12

Lecture #7: Wireless Networks (1)

• Kurose & Ross, Ch. 6.1-6.4

Thu, Feb 14

Lecture #8: Wireless Networks (2)

Tue, Feb 19

Lab #1: Configuring LANs with a Router

Thu, Feb 21

Lecture #9: Mobility Management (1)

• Kurose & Ross, Ch. 6.5-6.8

Tue, Feb 26

Lecture #10: Mobility Management (2)

Quiz 1

Lab 1 Report is due

Lab #2: Wireless

Thu, Feb 28

Lecture #11: Overlay Networks

Tue, Mar 5

Lecture #12: Content Distribution Networks

Thu, Mar 7

Lab #3: Performance Evaluation

Lab 2 Report is due

Tue, Mar 12


Lab 3 Report is due

Thu, Mar 14

Midterm Exam (in-class)

Tue, Mar 19

Spring Break – NO CLASSES

Thu, Mar 21

Spring Break – NO CLASSES

Tue, Mar 26

Lecture #13: Peer-to-peer Networks

Thu, Mar 28

Quiz 2

Project Phase 1 is due

Tue, Apr 2

Lecture #14: Distributed Hash Tables

• Kurose & Ross, Ch. 2.6

Thu, Apr 4

Lecture #15: Network Management

• Kurose & Ross, Ch. 9

Tue, Apr 9

Guest Lecture

Thu, Apr 11

Lab #4: Network Management

Tue, Apr 16

Lecture #16: Cloud Computing

Lab 4 Report is due

Thu, Apr 18

Lecture #17: Network Security (1)

• Kurose & Ross, Ch. 8.1-8.4

Tue, Apr 23

Lecture #18: Network Security (2)

• Kurose & Ross, Ch. 8.5-8.6

Thu, Apr 25

Lecture #19: Network Security (3)

Lab #5: Secure Sockets

• Kurose & Ross, Ch. 8.7-8.9

Tue, Apr 30

Lecture #20: Network Security (4)

Thu, May 2

Lecture #21: Multimedia Networking (1)

Lab 5 Report is due

• Kurose & Ross, Ch. 7.1-7.2

Tue, May 7

Lecture #22: Multimedia Networking (2)

Project Phase 2 is due

• Kurose & Ross, Ch. 7.3-7.4

Thu, May 9 (at 12:30pm)

Final Exam

The slides and other materials for this course are in part based upon the materials from a number of people/sources, including:

·      Shivkumar Kalyanaraman from IBM http://www.shivkumar.org

·      Official website for the Kurose & Ross text: Computer Networking: A Top-Down Approach

·      Constandine Dovrolis from GTech: http://www.cc.gatech.edu/~dovrolis

·      Mehmet H. Gunes from UNR: http://www.cse.unr.edu/~mgunes

·      Nick Feamster from Georgia Tech: http://www.cc.gatech.edu/~feamster

·      Hari Balakrishnan from MIT: http://nms.lcs.mit.edu/~hari

·      Jure Leskovec from Stanford: http://cs.stanford.edu/people/jure

·      Luis von Ahn from CMU: http://www.cs.cmu.edu/~biglou

·      Jason D. Hartline from Northwestern: http://www.eecs.northwestern.edu/hartline

·      Nicole Immorlica from Northwestern: http://users.eecs.northwestern.edu/~nickle

·      Adam Wierman from CalTech: http://www.cs.caltech.edu/~adamw

·      Dave Lee Hollinger from RPI

Program Outcomes

Course Outcomes

Assessment Methods/Metrics

Program Objectives Impacted


Ability to quantitatively evaluate different network protocols and applications.

Solve and model quantitative performance evaluation methods of a communication network in written assignments and exams.

2, 3

2, 8

Capability to design, develop and test a dynamic web server.

Design and implement resource management and scheduling algorithms of a computer network in programming assignments.

2, 3


Solid understanding of network security protocols and algorithms.

Design and implement security protocols using a router in lab assignments.

1, 2


Understand the needs of network users.

Prepare network protocol software for the service of various users in programming assignments.

1, 4

10, 11

Knowledge of legacy network protocols used in the practice.

Design and implement protocols using a router in lab assignments.


Program Outcomes:

1.     an ability to apply knowledge of computing, mathematics, science, and engineering.

2.     an ability to design and conduct experiments, as well as to analyze and interpret data.

3.     an ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs, within realistic constraints specific to the field.

4.     an ability to function effectively on multi-disciplinary teams.

5.     an ability to analyze a problem, and identify, formulate and use the appropriate computing and engineering requirements for obtaining its solution.

6.     an understanding of professional, ethical, legal, security and social issues and responsibilities.

7.     an ability to communicate effectively with a range of audiences.

8.     the broad education necessary to analyze the local and global impact of computing and engineering solutions on individuals, organizations, and society.

9.     a recognition of the need for, and an ability to engage in continuing professional development and life-long learning.

10.  a knowledge of contemporary issues.

11.  an ability to use current techniques, skills, and tools necessary for computing and engineering practice.

12.  an ability to apply mathematical foundations, algorithmic principles, and computer science and engineering theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices.

13.  an ability to apply design and development principles in the construction of software systems or computer systems of varying complexity.

Program Objectives:

Within 3 to 5 years of graduation our graduates will:

1.     be employed as computer science and engineering professionals beyond entry level positions or be making satisfactory progress in graduate programs.

2.     have peer-recognized expertise together with the ability to articulate that expertise as computer science and engineering professionals.

3.     apply good analytic, design, and implementation skills required to formulate and solve computer science and engineering problems.

4.     demonstrate that they can function, communicate, collaborate and continue to learn effectively as ethically and socially responsible computer science and engineering professionals.

Course Information - Description - Prerequisites - Textbooks - Syllabus - Organization - Grading - Schedule, Notes & Assignments - Acknowledgment - ABET Criteria

Last updated on April 30, 2013

EE E6761 Computer Communication Networks

Course-Related Materials

[Course Info][Syllabus]

[General][9/5 Week 1][9/12 Week 2][9/19 Week 3][9/26 Week 4][10/3 Week 5][10/10 Week 6][10/17 Week 7]
[10/24 Week 8][10/31 Week 9][11/7 Week 10][11/14 Week 11][11/21 Week 12][11/28 Week 13][12/5 Week 14]

General  General reference material
Week 1: 9/5  Topics: Course Info, Intro, Protocol Layering, Socket Programming
Week 2: 9/12  Topics: Internet Hardware / Addressing / DNS
Week 3: 9/19  Topics: Transport Layer Services, End-to-end Argument, Connection setup, reliability, flow control
Week 4: 9/26  Topics: Transport Layer Services: TCP Connection setup and flow control, congestion control
  • Reading for class:
    • Kurose-Ross chapter 3: 3.6 - 3.8
    • S. Floyd and K. Fall,
      Promoting the Use of End-to-End Congestion Control in the Internet.
      IEEE/ACM Transactions on Networking. (ps)
    • V. Jacobson and M. Karels,
      Congestion Avoidance and Control.
      Proceedings of ACM SIGCOMM'88, Stanford, CA. (ps)
    • D. Chiu and R. Jain,
      Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks
      . Computer Networks and ISDN Systems, Vol. 17, 1989. (pdf)
    • K.K. Ramakrishnan and R. Jain,
      A Binary Feedback Scheme for Congestion Avoidance in Computer Networks.
      ACM Transactions on Computer Systems, Vol. 8, No. 2, May 1980. (pdf)

  • Lecture #4 slides [ppt][ps (2 per pg)][ps (4 per pg)]

Week 5: 10/3  Topics: Routers: Queueing and Fast Lookups
  • Reading for class:
    • Kurose-Ross chapter 4: 4.6, chapter 6: 6.6
    • Bertsekas-Gallger, chapter 3: 3.1-3.3 (pp. 149-173) (PDF) Password required! E-mail instructor or TA
    • A. Demers, S. Keshav and S. Shenker,
      Analysis and Simulation of a Fair Queueing Algorithm.
      Proceedings of ACM SIGCOMM 1989. (pdf)
    • N. McKeown,
      A Fast Switched Backplane for a Gigabit Switched Router. Business Communications Review, Vol. 27, No. 12, December 1997 (figures omitted)
    • K. Sklower,
      A Tree-Based Packet Routing Table for Berkeley Unix. Berkeley Technical Report
    • Additional reading (optional)
      • A. Parekh and R. Gallager,
        A Generalized Processor Sharing Approach to Flow Control in Integrated Services Networks: The Single-Node Case. IEEE/ACM Transactions on Networking, Vol. 1, No. 3, June 1993.
      • M. Waldvogel, G. Varghese, J. Turner and B. Plattner,
        Scalable High Speed IP Routing Lookups. Proceedings of ACM SIGCOMM 1997.

  • Lecture #5 slides [ppt][ps (2 per pg)][ps (4 per pg)]
  • Assignment: HW #2 (postscript) due 10/13 at 5pm for everyone! I'll be releasing the solutions immediately, so NO LATE ASSIGNMENTS WILL BE ACCEPTED!!! Solutions (postscript)

Week 6: 10/10  Topic: Network Layer Routing
  • Reading for class:
    • Kurose-Ross chapter 4: 4.1-4.2, 4.3-4.5, 4.7-4.9
    • S. Deering and D. Cheriton,
      Multicast Routing in Datagram Internetworks and Extended LANs.
      ACM Transactions on Computer Systems (TOCS), Vol. 8, No. 2, pp 85-110, May, 1990. (PDF)
    • T. Ballardie, P. Francis, and J. Crowcroft,
      Core Based Trees (CBT) An Architecture for Scalable Inter-Domain Multicast Routing.
      In Proceedings of SIGCOMM '93 (San Francisco, CA, August, 1993). (PDF)
    • H. Holbrook and D. Cheriton,
      IP Multicast Channels: EXPRESS Support for Large-scale Single-source Applications.
      In Proceedings of SIGCOMM'99 (Cambridge, MA, August, 1999). (PDF)

  • Lecture #6 slides [ppt][ps (2 per pg)][ps (4 per pg)]
  • Sample midterm (PS)

Week 7: 10/17  Midterm
Week 8: 10/24  Topic: Multicast and Link Layer
Week 9: 10/31  Topic: Multimedia Networking
  • Reading for class:
    • Kurose-Ross Chapter 6
    • Additional Reading:
      • R. Ramjee, J. Kurose, D. Towsley, and H. Schulzrinne,
        Adaptive Playout Mechanisms for Packetized Audio Applications in Wide-Area Networks.
        In Proceedings of Infocom'94 (Toronto, Canada, June, 1994). (PS)
      • J. Padhye, J. Kurose, D. Towsley, and R. Koodli,
        A Model Based TCP-Friendly Rate Control Protocol.
        In Proceedings of NOSSDAV'99 (Basking Ridge, NJ, June, 1999). (PS)
      • M. Ammar and L. Wu,
        Improving the Performance of Point to Multi-Point ARQ Protocols through Destination Set Splitting.
        In Proceedings of IEEE INFOCOM'92 (Florence, Italy, May 1992) (PS)
      • S. McCanne and V. Jacobson,
        Receiver-driven Layered Multicast.
        In Proceedings of SIGCOMM'96 (Stanford, CA, August, 1996). (PDF)
  • Lecture #8 slides [ppt][ps (2 per pg)][ps (4 per pg)]
  • Assignment: HW #3 (postscript) due 11/14 at 5pm for everyone
  • Solutions (PS)

Week 10: 11/7  No class: Election Day
Week 11: 11/14  No class:
Week 12: 11/21  Topic: Network-Layer Support for Multimedia Apps
  • Reading for class:
    • Kurose-Ross Chapter 6.7 - 6.10
    • Additional Reading:
      • S. Shenker, C. Partridge, and R. Guerin,
        Specification of Guaranteed Quality of Service RFC 2212, September 1997. (TXT)
      • L. Zhang, S. Deering, D. Estrin, S. Shenker, D. Zappala,
        RSVP: A New Resource ReSerVation Protocol. IEEE Network Magazine, September 1993. (PS)
      • S. Jamin, P. Danzig, S. Shenker, and L. Zhang,
        A Measurement-Based Admission Control Algorithm for Integrated Service Packet Networks.
        In IEEE/ACM Transactions on Networking, Vol. 5, No. 1, February, 1997. (PDF)
      • S. Blake, D. Black, M. Carlson, E. Davies, Z. Wang, and W. Weiss,
        An Architecture for Differentiated Services.
        RFC 2475, December 1998. (TXT)
      • J. Heinanen, F. Baker, W. Weiss, and J. Wroclawski,
        Assured Forwarding PHB Group.
        RFC 2597, June 1999. (TXT)
      • V. Jacobson, K. Nichols, and K. Poduri,
        An Expedited Forwarding PHB
        RFC 2598, June 1999. (TXT)
      • S. Sahu, D. Towsley, and J. Kurose,
        A Quantitative Study of Differentiated Services for the Internet.
        Appears in Proceedings of IEEE Global Internet'99 (Rio de Janeiro, Brazil, December 1999) (PS)
      • I. Stoica, S. Shenker, and H. Zhang,
        Core-Stateless Fair Queueing: Achieving Approximately Fair Bandwidth Allocations in High Speed Networks.
        In Proceedings of SIGCOMM'98 (Vancouver, Canada, June, 1998). (PS)
      • Y. Rekhter, B. Davie, D. Katz, E. Rosen, and G. Swallow,
        Cisco Systems' Tag Switching Architecture Overview.
        RFC 2105, February 1997. (PS)
      • D. Awduche, J. Malcolm, J. Agogbue, M. O'Dell, J. McManus,
        Requirements for Traffic Engineering Over MPLS.
        RFC 2702, September 1999. (PS)
  • Lecture #9 slides [ppt][ps (2 per pg)][ps (4 per pg)]

Week 13: 11/28  Topic: Active Queue Management / Fairness / Inference
  • Reading for class:
    • S. Floyd and V. Jacobson,
      Random Early Detection gateways for Congestion Avoidance.
      IEEE/ACM Transactions on Networking, V.1 N.4, August 1993 (PS)
    • K.K. Ramakrishnan and R. Jain,
      A Binary Feedback Scheme for Congestion Avoidance in Computer Networks.
      ACM Transactions on Computer Systems, Vol. 8, No. 2, May 1980. (pdf)
    • Bertsekas-Gallger, chapter 6.5.2: 3.1-3.3 (pp. 149-173) (PDF) Password required! E-mail instructor or TA
    • F. Kelly,
      Charging and rate control for elastic traffic.
      European Transactions on Telecommunications, volume 8 (1997). (PS)
    • R. Carter and M. Crovella,
      Measuring Bottleneck Link Speed in Packet-Switched Networks.
      Performance Evaluation, Vol 27&28, 1996. (PS)
    • S. Ratnasamy and S. McCanne,
      Inference of Multicast Routing Tree Topologies and Bottleneck Bandwidths using End-to-end Measurements.
      In Proceedings of IEEE Infocom'99 (New York, NY, March 1999).
    • D. Rubenstein, J. Kurose, and D. Towsley,
      Detecting Shared Congestion of Flows Via End-to-end Measurement.
      In Proceedings of ACM SIGMETRICS'00, (Santa Clara, CA, June 2000).
  • Lecture #10 slides [ppt][ps (2 per pg)][ps (4 per pg)]
  • Week 14: 12/5  Topic: Network Security
    • Reading for class:
      • Kurose-Ross Chapter 7
      • T. Gray et al,
        UW Network Security Credo
        Draft, June 2000. (TXT)
      • CERT Coordination Center,
        Denial of Service Attacks
        Technical Report (PS)
      • Cisco Systems,
        Strategies to Protect Against Distributed Denial of Service (DDoS) Attacks
        Cisco white paper, February, 2000. (PS)
      • S. Savage, D. Wetherall, A. Karlin, and T. Anderson,
        Practical Network Support for IP Traceback
        Proceedings of ACM SIGCOMM'00, Stockholm, Sweden, 2000. (PS)
    • Lecture #11 slides [ppt][ps (2 per pg)][ps (4 per pg)]

    [Course Info][Syllabus]

    [General][9/5 Week 1][9/12 Week 2][9/19 Week 3][9/26 Week 4][10/3 Week 5][10/10 Week 6][10/17 Week 7]
    [10/24 Week 8][10/31 Week 9][11/7 Week 10][11/14 Week 11][11/21 Week 12][11/28 Week 13][12/5 Week 14]

    0 Thoughts to “Kurose Ross Programming Assignment Solutions Online

    Leave a comment

    L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *