DOC PREVIEW
GT ECE 4110 - ELEMENTARY UDP SOCKETS

This preview shows page 1-2-20-21 out of 21 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 21 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

1CHAPTER 8 ELEMENTARY UDP SOCKETSUser Datagram Protocol is a connectionless, “unreliable” datagram protocol. Function calls for a typical UDP Client/server- Client does not establish a connection with the server.- Server does not accept a connection from a client.- recvfrom function returns the protocol address of the client so server can send a response to correct client.23recvfrom and sendto functionssockfd - Descriptor.*buff - Pointer to buffer to read or write.nbytes - Number of Bytes to read or write.flags - Set to 0 for nowtosendtosocket address structure containing the protocoladdress (IP address and port # ) of where data isto be sent.addrlen Size of socket address structure (an integer value).recvfromfrom*addrlen← ( pointer to integer value )socket address structure that is filled in byrecvfrom with the protocol address (IP addressand port # ) of where data came from.4[ from p. 240 ]5UDP echo ServerRedo echo client - server from chapter 5 but using UDPUDPClientUDPServerfgetsfputssendto recvfromrecvfrom sendto6Server Main FunctionLines 7-12: Note now we use SOCK_DGRAM to mean UDPINADDR_ANY = 0SERV_PORT = 9877Line 13dg_echo does the server processingServer dg_echo functionLine 8-12: Loop reads next datagram and sends back.789Server dg_echo function cont.Note:- This dg-echo function never terminates.- This is an iterative server which is typical for UDP. A concurrent server calls fork function, TCP is typically concurrent.- Each UDP socket has a receive buffer. ( Aside: size is controlled by a socket option SO_RCVBUF ).Difference between UDP and TCP implementations of our example101112UDP echo Client Main FunctionLines 9-12: IPV4 socket address structure is filled in with the IP address, and port number of server.Lines 13:UDP socket is created Lines14:Call dg_clidg_cli functionLines 7: Read a line from standard input using fgets. Lines 8: Send the line to server using sendto. Lines 9: Read back server’s ECHO using recvfrom. Lines 10: Print the echoed line to standard output using fputs.Note: Our client does not call bind, it is NOT NECESSARY131415LACK OF FLOW CONTROL WITH UDPModify client dg _ cli function to send a fixed number of datagramsNow writes 2,000 times a 1,400 BYTE UDP datagram to server.Modify server dg_echo function to receive datagrams and count the number received( No longer echo datagrams back to client )Line 9: Adds ability to execute the function recvfrom_int when type cntrl C. This function prints out how many we got.16171819203882 – 1970 = 1912 dropped due to full socket buffer82 datagrams received => 1994 datagrams6 datagrams were never receivedRepeat this test several times and receive: 37, 108, 30, 108, 114 We can change the socket’s receive buffer using SO_RCVBUF socketoptionDefault size in UDP for a BSD/OS is 41,600 bytes => room for only 41,600 = 29 of our datagrams 1400Can change to 240 K bytes sizeNow we receive 115, 168, 179, 145, and 133 in Stevens example runs.Not much bigger than 37, 108, 30, 108, 114 from before buffer size


View Full Document

GT ECE 4110 - ELEMENTARY UDP SOCKETS

Documents in this Course
PUSH Flag

PUSH Flag

17 pages

Ethernet

Ethernet

33 pages

Load more
Download ELEMENTARY UDP SOCKETS
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view ELEMENTARY UDP SOCKETS and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view ELEMENTARY UDP SOCKETS 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?