class7 - CSCI 233 Internet Protocols Class 7 David C...

Info icon This preview shows pages 1–13. Sign up to view the full content.

View Full Document Right Arrow Icon
1 CSCI 233 Internet Protocols Class 7 David C. Roberts Copyright 2006, David C. Roberts, all rights reserved
Image of page 1

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

View Full Document Right Arrow Icon
2 Agenda Client-Server The Socket Interface Bootstrap and autoconfiguration The Domain Name System TELNET Secure Shell
Image of page 2
3 Client-Server Server—any program that offers a service that can be reached over a network Server accepts the request Performs the service Returns the result Client—a program that sends a request to a server and waits for a response
Image of page 3

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

View Full Document Right Arrow Icon
4 Servers Typically implemented as application programs Allows flexibility in where they run, how many are run Servers usually do not terminate; clients usually terminate after some number of server interactions Servers must enforce access and protection policies, are generally harder to build than application programs
Image of page 4
5 UDP Echo Server Server starts, uses port 7 Server enters loop Wait for request datagram at port 7 Reverse source and destination addresses, and port IDs Return datagram to its sender Server starts, continues to provide service without terminating Client makes a request, awaits a response, usually terminates after using a server some number of times. Question: Who would use such a server? When?
Image of page 5

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

View Full Document Right Arrow Icon
6 An Example: UDP Echo Server
Image of page 6
7 RARP Server An unusual server Does not use IP; communicates at the physical level Cannot be an application program, because it needs access to physical level communications
Image of page 7

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

View Full Document Right Arrow Icon
8 Server Complexity Servers generally don’t wait to complete one request before starting another They start a separate copy of themselves for each request This concurrency typically makes servers much more complex to program than clients
Image of page 8
9 Summary Distributed programs often interact as client and server Server may be application program; or not Server may use IP communications; or it may not Client-server communication may be directly addressed between two machines, or it may be broadcast
Image of page 9

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

View Full Document Right Arrow Icon
10 The Socket Abstraction Socket—a mechanism that provides an endpoint for communication Program asks that a socket be created, and the system provides a socket number For TCP, both endpoints must be specified For UDP, remote endpoint can be passed as an argument with each message
Image of page 10
11 Application Interface How programs interface with TCP/IP APIs are not specified in protocol standards We won’t deal with the definition, either Socket used in Berkeley UNIX is the model for Windows Socket (WinSock) To a program, socket I/O looks much like file I/O
Image of page 11

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

View Full Document Right Arrow Icon
12 Open—Read—Write—Close Open Specifies file or device, obtain permission Returns integer file descriptor Read Transfers data into user process Write Transfers data from user process to file or device Close Informs operating system that the program is finished using the object that was opened
Image of page 12
Image of page 13
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern