project3

project3 - Project 3 Project 3 Networking I Unreliable...

Info iconThis preview shows pages 1–10. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Project 3 Project 3 Networking I: Unreliable Datagrams Zhiyuan Teo Slide heritage: Previous TAs → Robert Escriva Cornell CS 4411, October 07, 2011 Updated October 08, 2011 Project 3 1 Administrative Information 2 Project Scope 3 Implementation details Sending datagrams Receiving datagrams Miniports Illustration of a communications session Unions Other specifications 4 Grading 5 Concluding Advice Project 3 Administrative Information Announcements Project 3 will be out this evening, due 11.59pm Sunday, 16 Oct. Project 2 grading and concerns. Project 1 regrading is still in progress. Some partners may be reshuffled again; affected groups will be informed by e-mail. See course staff if you encountered serious difficulty with projects 1 or 2. Project 3 Administrative Information Other announcements Next week: Supplementary lecture 3. No office hours or lecture on the week of 24-28 Oct. E-mail course staff if you have any questions on project 4. You are strongly encouraged to attend lectures and office hours. Don’t rely solely on project documentation; refer to project slides too. Project 3 Project Scope A quick primer on networking We will defer the OSI layer discussion to the 4410 lecture. What are datagrams * ? Reliable vs unreliable network services. Architectural considerations in networking. * Sometimes loosely interchanged with the term ‘packet’. Project 3 Project Scope Project Scope Build a UDP/IP networking stack. Use network.h for “raw IP interface”. Build UDP abstractions: use ports to identify endpoints. A minimessage layer for thread I/O. Project 3 Project Scope The Interface void minimsg_initialize(); miniport_t miniport_create_unbound( int port); miniport_t miniport_create_bound( network_address_t addr, int port); void miniport_destroy(miniport_t miniport); int minimsg_send(miniport_t local_unbound, miniport_t local_bound, minimsg_t msg, int len); int minimsg_receive(miniport_t local_unbound, miniport_t * new_local_bound, minimsg_t msg, int * len); Project 3 Implementation details Overview The networking device should be treated as a raw IP interface; it sends byte packets. Your minimsg layer enables communication between other systems running minithreads. network5.c network6.c Project 3 Implementation details Sending datagrams Sending datagrams int network_send_pkt( network_address_t dest_address, int hdr_len, char * hdr, int data_len, char * data); Header contains information about the sender and receiver....
View Full Document

{[ snackBarMessage ]}

Page1 / 36

project3 - Project 3 Project 3 Networking I Unreliable...

This preview shows document pages 1 - 10. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online