CS 241 Section Week #12(04/23/09)Outline• LMP2 Overview• Brief intro to Networking• What is a protocol?• OSI Model• TCP/IP Model• UDP and TCP• Socket Programming Library Functions• Hypertext Transfer ProtocolLMP2 OverviewLMP2 Overview• LMP2 encodes or decodes a number of files• It has the following parameters:– the filenames – the number of bytes (rw_units) for each read/write from the file;• But, process files in “round robin” fashion• encrypt rw_unit of file1• encrypt rw_unit of file2• encrypt rw_unit of file3• encrypt rw_unit of file1• ………LMP2 Overview• For the output in 2ndpart, – print in get_frame() will suffice– you may print in my_munmap.• Most csil machines, use signed char, whose range is from ‐128 to 127. So use unsigned char if you compare with 255.LMP2 Overview• For N files, ‐The Table of File‐Mappings has exactly N entries ‐The Virtual Page Table has enough entries to fit each file's length divided by 4096B ‐The Physical Memory Frame Table has 16 entries • Example: 3 files of length 3072bytes, 2048bytes, and 8192bytes: ‐The Table of File‐Mappings has 3 entries‐The Virtual Page Table has: (3072/4096=>1) + (2048/4096=>1) + (8192/4096=>2) = 4 entries ‐The Physical Memory Frame Table has 16 entries and four of them are filledBrief intro to NetworkingNetworking• Allows computers and other networked devices to talk to each other– How can we tell what the packet we just received means?• Interactions between applications on different machines are governed by protocols– Protocols dictate the format and sequence of the information exchangeNames and Addresses• A network address identifies a specific computer on the network– Several kinds of addresses exist: MAC address (for LANs), IP address (for the Internet), etc.• Domain or DNS names are used for convenience, so we don’t have to remember numerical addressesPorts• Ports are numbers that represent an end‐point for communication– Ports are logical, not physical, entities– All packets arrive to the same physical interface, and are then differentiated based on the port number (and other contents of the packet header)• Usually, distinct ports are used for communication via different protocols– E.g., port 80 is for HTTP, 22 is for SSH, etc.– See /etc/services for a listWhat is a protocol?12What is a protocol?• It is a formal description of message formats and the rules that two computers must follow in order to exchange messages.• This set of rules describes how data is transmitted over a network.13Why are protocols needed?• Protocols are needed for communication between any two devices. – In what format will the messages be transmitted?– At what speed should messages be transmitted?– What to do if errors take place?– What to do if parts of a message are lost?14Network Model• What is a model? –A hypothetical description of a complex entity or process.• Network model ‐ A method of describing and analyzing data communications networks by breaking the entire set of communications process into a number of layers• Each layer has a specific function15Open Systems Interconnect (OSI) Model• Who made: – International Standards Organization (ISO)• A Model of How Protocols and Networking Components Could be Made • “Open”means the concepts are non‐proprietary; can be used by anyone.• OSI is not a protocol. It is a model for understanding and designing a network architecture that is flexible and robust.16Network Architecture• A set of layers and protocols is called a network architecture• It refers to the physical and logical design of a network177‐layer OSI model• Why so many layers?– To reduce complexity, networks are organized as a stack of layers, one below the other– Each layer performs a specific task. It provides services to an adjacent layer– This is similar to the concept of a function in programming languages – function do a specific task18The Layers of the OSI ModelApplicationPresentationSessionTransportNetworkData Link Physical19The Layers of the OSI ModelSome MnemonicsApplicationPresentationSessionTransportNetworkData Link PhysicalAllPeopleSeemToNeedDataProcessingPleaseDoNotTellSecretPasswordsAnytime20Physical layer• Specifications for the physical components of the network•Bit representation: encode bits into electrical or optical signals• Transmission rate: the number of bits sent each secondApplicationPresentationSessionTransportNetworkData Link Physical21Data Link LayerResponsible for delivery of data between two systems on the same network. Main functions are:•Framing: divides the stream of bits received from network layer into manageable data units called frames.•Physical Addressing: add a header to the frame to define the physical address of the source and the destination machines.ApplicationPresentationSessionTransportNetworkData Link Physical22Network LayerMain functions of this layer are:• Responsible for delivery of packets across multiple networks.•Routing: Provide mechanisms to transmit data over independent networks that are linked together.ApplicationPresentationSessionTransportNetworkData Link Physical23Transport LayerMain functions of this layer are:• Responsible for source‐to‐destination delivery of the entire message.•Segmentation and reassembly: divide message into smaller segments, number them and transmit. Reassemble these messages at the receiving end.ApplicationPresentationSessionTransportNetworkData Link Physical24Session LayerMain functions of this layer are:• Dialog control: allows two systems to enter into a dialog, keep a track of whose turn it is to transmit.ApplicationPresentationSessionTransportNetworkData Link PhysicalH5synsynsynFrom Presentation LayerTo Transport LayerSession LayerFrom Transport LayerTo Presentation LayerH5synsynsynSession Layer25Presentation LayerResponsibilities of this layer are:•Translation since different computers use different encoding systems (bit order translationApplicationPresentationSessionTransportNetworkData Link Physical26Application Layer•Contains protocols that allow the users to access the network (FTP, HTTP, SMTP, etc) • DOES NOT include application programs such as email, browsers, word processing applications, etc.ApplicationPresentationSessionTransportNetworkData Link PhysicalTo Presentation Layer From Presentation Layer27Summary of Functions of
View Full Document