1 / 17

Computer Networking {week 1 }

Rensselaer Polytechnic Institute CSCI-4220 – Network Programming David Goldschmidt, Ph.D. Computer Networking {week 1 }. Networks. Early computers were highly centralized Bottleneck Single point of failure Users must physically go to the computer

kamea
Download Presentation

Computer Networking {week 1 }

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Rensselaer Polytechnic Institute CSCI-4220 – Network Programming David Goldschmidt, Ph.D. Computer Networking{week 1}

  2. Networks • Early computers were highly centralized • Bottleneck • Single point of failure • Users must physically goto the computer • Proliferation of low-cost computers connected via a network helpedget past the above disadvantages what advantages do computer networks provide us?

  3. Q P Computer networks • A computer network is an interconnected collection of autonomous computers and devices • Processes communicatewith one another acrossthe network • Such communication isoften transparent toend-users

  4. Types of networks • Hierarchical networks: • Nodes are not equal • Nodes interconnect ina strict pattern • Single points of failure exist! • Heterarchical networks: • Nodes are equal(ish) • Nodes connected to produce multiple paths

  5. Are you connected? • The Internet (1969) is a network that’s • Global • Decentralized • Redundant • Made up of many different types of machines • Both hierarchical and heterarchical • Constantly changing • Humungous how many machines are on the Internet?

  6. Q P Interprocess communication

  7. Network models • We use a formal network model to organize and abstract various aspects of computer (and other) networks • Effectively hides the (messy)implementation details • Defines how communication occursacross the network • Often uses a layered approach

  8. Layered models • A layered model divides tasks/responsibilities into pieces that are organized into layers • Each piece is “solved” independently • Well-defined (and well-documented) interfaces between each layer are critically important • Each layer often logically “connects” to the same layer of another instance why? what advantages do layered models provide us?

  9. Layering • Use a layered model to design an operating system by dividing it into Nlevels or layers • Layer 0 is the hardware • Layer 1 is the kernel • Layer N is the top-leveluser interface (GUI) • Each layer uses functionsand services of the layer(or layers) beneath it

  10. Open Systems Interconnection (OSI) Reference Model • What’s the OSI Reference Model? • The International StandardsOrganization (ISO) proposalfor the standardization ofthe various protocols usedin computer networks • A seven-layer protocol stack

  11. Open Systems Interconnection (OSI) Reference Model • In reality, notall layers arealways used.... • The Internet uses only four layers: • Application • Transport • Network • Physical

  12. Q P Internet traffic (jam) • Each layer on the client side logically communicates with the same layer onthe server side server client intermediate router interfaces exist between layers

  13. P Internet messages • Each layer prepends or appends its information in a header or trailer HTTP Request TCP Hdr| HTTP Request IP Hdr| TCP Hdr| HTTP Request Ethernet Hdr| IP Hdr| TCP Hdr| HTTP Request |Cksum

  14. Protocols • A protocol is an agreed-upon convention that defines how communication occurs between two (or more?) endpoints • All endpoints must “understand” andcorrectly implement the protocol • Protocols must be formally defined, unambiguous, and well-documented • Protocols should address error conditionsand unexpected scenarios

  15. Q P Layered model protocols • In a layered model, two types of protocols: • Interface protocols describe communication between layers (on the same endpoint) • Peer-to-peer protocols describe communication between two endpoints at the same layer

  16. Clients and servers • A server is a process that provides accessto a centralized resource or service • The term “server” might also refer to the machine on which the server is running • Client/server communication: • Server waits for incoming requests from clients • A client is a process that sends request(s) to a server and (usually) waits for a response what are some examples of client/server comunication?

  17. Servers • Servers typically run 24/7 and are more complex (more interesting) than clients • Types of servers: • An iterative server handles one request at a time • A concurrent server can handle multiple client requests (almost) simultaneously how are concurrent servers implemented?

More Related