DOC-20240817-WA0000..pdf
Document Details
Uploaded by FunAgate5082
Tags
Full Transcript
Transmission delay dominates Propagation delay in Packet switching In a packet switching network, packets are routed from source to destination along a single path having two intermediate nodes. If the message size is 24 bytes and each packet contains a header of 3 bytes, then the op...
Transmission delay dominates Propagation delay in Packet switching In a packet switching network, packets are routed from source to destination along a single path having two intermediate nodes. If the message size is 24 bytes and each packet contains a header of 3 bytes, then the optimum packet size is- 4 bytes 6 bytes (Let bandwidth of the network = X Bps and 1 / X = a) 9 bytes Option-A: Packet Size = 4 Bytes Here, Number of packets required Time taken by the remaining = Total data to be sent / Data packets to reach from sender to v The entire message is divided into contained in one packet receiver packets of size 4 bytes. = 24 bytes / 1 byte = 24 packets = Number of remaining packets x v These packets are then sent one Transmission delay after the other. Transmission delay = 23 x 4a sec = 92a sec = Packet size / Bandwidth Data size = Packet size – Header size = 4 bytes / X Bps = 4a sec Total time taken to send the = 4 bytes – 3 bytes = 1 byte complete message from sender Time taken by the first packet to reach from sender to receiver to receiver Thus, 1 byte of data can be sent in each = 12a sec + 92a sec = 104a sec packet. = 3 x Transmission delay = 3 x 4a sec = 12a sec Option-B: Packet Size = 6 Bytes Here, the entire message is divided Number of packets Time taken by the first packet to reach from sender to into packets of size 6 bytes. required receiver These packets are then sent one = Total data to be sent / = 3 x Transmission delay = 3 x 6a sec = 18a sec after the other. D ata co nta i n e d i n o n e packet Time taken by the remaining packets to reach from Data size = Packet size – Header = 24 bytes / 3 bytes = 8 sender to receiver size packets = No of remaining packets x Transmission delay = 6 bytes – 3 bytes = 3 bytes = 7 x 6a sec = 42a sec Transmission delay Thus, only 3 bytes of data can be = Packet size / Bandwidth Total time taken to send the complete message from sent in each packet. = 6 bytes / X Bps = 6a sec sender to receiver = 18a sec + 42a sec = 60a sec Option-B: Packet Size = 9 Bytes Here, the entire message is Time taken by the first packet to reach from sender divided into packets of size 9 Number of packets required to receiver = 3 x Transmission delay = 3 x 9a sec = bytes. These packets are then = Total data to be sent / Data 27a sec sent one after the other. contained in one packet = 24 bytes / 6 bytes = 4 packets Time taken by the remaining packets to reach from Data size = Packet size – Header sender to receiver = Number of remaining packets x size = 9 – 3 = 6 bytes Transmission delay Transmission delay = 3 x 9a sec = 27a sec Thus, only 6 bytes of data can = Packet size / Bandwidth = 9 be sent in each packet. bytes / X Bps = 9a sec Total time taken to send the complete message from sender to receiver = 27a sec + 27a sec = 54a sec From here, Total time taken when packet size is 4 bytes = 104a sec Total time taken when packet size is 6 bytes = 60a sec Total time taken when packet size is 9 bytes = 54a sec Result: Time taken is minimum when packet size is 9 bytes. Client-Server Architecture Server-side Programming : Client-side Programming : It is the program that runs on server dealing with the It is the program that runs on the client machine generation of content of web page. (browser) and deals with the user interface/display and any other processing that can happen on client 1) Querying the database machine like reading/writing cookies. 2) Operations over databases 3) Access/Write a file on server. 1) Interact with temporary storage 4) Interact with other servers. 2) Make interactive web pages 5) Structure web applications. 3) Interact with local storage 6) Process user input. (For example if user input is a 4) Sending request for data to server text in search box, run a search algorithm on data 5) Send request to server stored on server and send the results.) 6) work as an interface between server and user The Programming languages for The Programming languages for server-side programming are : client-side programming are : 1) PHP 1) Javascript 2) C++ 2) VBScript 3) Java and JSP 3) HTML 4) Python 4) CSS 5) Ruby on Rails 5) AJAX HTTP (Hyper Text Transfer Protocol) HTTP is application-level protocol for collaborative, distributed, hypermedia information systems. It is the data communication protocol used to HTTP is media independent: It specifies that any type of media establish communication between client and content can be sent by HTTP as long as both the server and the client server. can handle the data content. It is TCP/IP based communication protocol, which is used to deliver the data like image files, query HTTP is connectionless: It is a connectionless approach in which results, HTML files etc on the World Wide Web HTTP client i.e., a browser initiates the HTTP request and after the (WWW) with the default port is TCP 80. request is sent the client disconnects from server and waits for the response. It provides the standardized way for computers to communicate with each other. HTTP is stateless: The client and server are aware of each other It is the protocol that allows web servers and during a current request only. Afterwards, both of them forget each browsers to exchange data over the web. other. Due to the stateless nature of protocol, neither the client nor the server can retain the information about different request across It is a request response protocol. the web pages. HTTP Requests The HTTP request method indicates the method to be The request sent by the computer to a web server, performed on the resource identified by the Requested contains all sorts of potentially interesting information; URI (Uniform Resource Identifier). it is known as HTTP requests. Imp features of GET requests are: Ø It remains in the browser history Ø It can be bookmarked Ø It can be cached Ø It have length restrictions Ø It should never be used when dealing with sensitive data Ø It should only be used for retrieving the data Imp features of POST requests are: Ø This requests cannot be bookmarked Ø This requests have no restrictions on length of data Ø This requests are never cached Ø This requests do not retain in the browser history HTTP - Messages HTTP is based on the client-server architecture model and a stateless request/response protocol that operates by exchanging messages across a reliable TCP/IP connection. An HTTP "client" is a program that establishes a connection to a server for the purpose of sending one or more HTTP request messages. An HTTP "server" is a program that accepts connections in order to serve HTTP requests by sending HTTP response messages. HTTP makes use of the Uniform Resource Identifier (URI) to identify a given resource and to establish a connection. Once the connection is established, HTTP messages are passed in a format similar to that used by the Internet mail and the Multipurpose Internet Mail Extensions. These messages include requests from client to server and responses from server to client which will have the following format: HTTP requests and HTTP responses use a generic message format for transferring the required data. This generic message format consists of the following four items. Message Start-Line: A start-line will have the following generic syntax: A request-line consists of three parts: a method name, requested resource's local path, and the HTTP version being used. A Status-line has three parts: the HTTP version, a response status code that gives the result of the request, and the English reason phrase describing the status code. Message Headers The Message header provides information about the request and response. It also provides information about the object which is sent in the message body. Message Headers are of four types: Ø General Header: It has general applicability for both request messages and response messages. Ø Request Header: It has applicability only for the request messages. Ø Response Header: It has applicability only for the response messages. Ø Entity Header: It defines meta-information about the entity-body, and about the resource identified by request. All the above headers follow the same generic format. Message Body The message body of an HTTP message is used to carry the entire body associated with the request and response. Transfer-Encoding MUST be used to indicate any transfer-codings which is applied by an application to ensure safe and proper transfer of the message. Transfer-Encoding is a property of the message. Both MAC Address and IP Address are used to uniquely defines a device on the internet. NIC Card’s Manufacturer provides the MAC Address, on the other hand Internet Service Provider provides IP Address. The main difference between MAC and IP address is that, MAC Address is used to ensure the physical address of computer. It uniquely identifies the devices on a network. While IP address are used to uniquely identifies the connection of network with that device that take part in a network. Why need Mac address? Why need an IP address? Ø It provides a secure way to find senders Ø An IP address is assigned to every device on a network so that or receivers in the network. the device can be located on that network. Ø MAC address helps you to prevent Ø It helps you to develop a virtual connection between a unwanted network access. destination and a source. Ø MAC address is a unique number; Ø IP address is one type of numerical label assigned to each hence it can be used to track the device. device connected to a computer network that uses the IP for Ø Wi-Fi networks at the airport use the communication. MAC address of a specific device to Ø It acts as an identifier for a specific machine on a particular identify it. network. Ø It helps you to specify the technical format of the addressing and packaging scheme. Domain Name System (DNS) v DNS is a host name to IP address translation service. v It is an application layer protocol for message exchange between clients and servers. v Each device connected to Internet has a unique IP address which other machines use to find the device. DNS servers eliminate the need for humans to memorize IP addresses such as 192.168.1.1 Why DNS ?? Every host is identified by the IP address but remembering numbers is very difficult for the people and also the IP addresses are not static therefore a mapping is required to change the domain name to IP address. So DNS is used to convert the domain name of the websites to their numerical IP address. There are 4 DNS servers involved in loading a webpage: DNS recursor - The recursor can be thought of as a librarian who is asked to go find a particular book somewhere in a library. The DNS recursor is a server designed to receive queries from client machines through applications such as web browsers. Typically the recursor is then responsible for making additional requests in order to satisfy the client’s DNS query. Root nameserver - The root server is the first step in translating (resolving) human readable host names into IP addresses. It can be thought of like an index in a library that points to different racks of books - typically it serves as a reference to other more specific locations. TLD nameserver - The top level domain server (TLD) can be thought of as a specific rack of books in a library. This nameserver is the next step in the search for a specific IP address, and it hosts the last portion of a hostname (In example.com, the TLD server is “com”). Authoritative nameserver - This final nameserver can be thought of as a dictionary on a rack of books, in which a specific name can be translated into its definition. The authoritative nameserver is the last stop in the nameserver query. If the authoritative name server has access to the requested record, it will return the IP address for the requested hostname back to the DNS Recursor (the librarian) that made the initial request. 1. A user types ‘example.com’ into a web browser and the query travels into the Internet and is received by a DNS recursive resolver. 2. The resolver then queries a DNS root nameserver (.). 3. The root server then responds to the resolver with the address of a Top Level Domain (TLD) DNS server (such as.com or.net), which stores the information for its domains. When searching for example.com, our request is pointed toward the.com TLD. 4. The resolver then makes a request to the.com TLD. 5. The TLD server then responds with the IP address of the domain’s nameserver, example.com. 6. Lastly, the recursive resolver sends a query to the domain’s nameserver. 7. The IP address for example.com is then returned to the resolver from the nameserver. 8. The DNS resolver then responds to the web browser with the IP address of the domain requested initially. Once these 8 steps of the DNS lookup have returned the IP address for example.com, the browser is able to make the request for the web page: v The browser makes a HTTP request to the IP address. v The server at that IP returns the webpage to be rendered in the browser (step 10). DNS These are instructions that live in authoritative DNS servers and provide information about a domain including what IP address is associated with records that domain and how to handle requests for that domain. ü A record - The record that holds the IP address of a domain. Learn more about the A record. ü CNAME record - Forwards one domain or subdomain to another domain, does NOT provide an IP address. Learn more about the CNAME record. ü MX record - Directs mail to an email server. Learn more about the MX record. ü TXT record - Lets an admin store text notes in the record. Learn more about the TXT record. ü NS record - Stores the name server for a DNS entry. Learn more about the NS record. ü SOA record - Stores admin information about a domain. Learn more about the SOA record. ü SRV record - Specifies a port for specific services. Learn more about the SRV record. ü PTR record - Provides a domain name in reverse-lookups. Learn more about the PTR record. v Electronic mail is often referred to as E-mail and it is a method used for exchanging digital messages. v Electronic mail is mainly designed for human use. v It allows a message to includes text, image, audio as well as video. v This service allows one message to be sent to one or more than one recipient. v The E-mail systems are mainly based on the store-and-forward model where the E-mail server system accepts, forwards, deliver and store the messages on behalf of users who only need to connect to the infrastructure of the Email. v The Person who sends the email is referred to as the Sender while the person who receives an email is referred to as the Recipient. Ø We can send the same message to several peoples at the same time. Ø It is a very fast and efficient way of transferring information. Ø The email system is very fast as compared to the Postal system. Ø Information can be easily forwarded to coworkers without retyping it. User Agent(UA) Message Transfer Agent (MTA) It is a program mainly used to send The actual process of transferring the email is done through the Message Transfer Agent(MTA). and receive an email. In order to send an Email, a system must have an MTA client. It is the first component of an Email. In order to receive an email, a system must have an MTA server. User-agent also handles the mailboxes. The protocol that is mainly used to define the MTA client and MTA server on the internet is called SMTP(Simple Mail Transfer Protocol). The User-agent mainly provides the services to the user in order to The SMTP mainly defines how the commands and responses must be sent back and forth make the sending and receiving process of message easier. Message Access Agent (MAA) Services provided by the UA: In the first and second stages of email delivery, we make use of SMTP. Ø Reading the Message SMTP is basically a Push protocol. Ø Replying the Message Ø Composing the Message The third stage of the email delivery mainly needs the pull protocol, and at this stage, the Ø Forwarding the Message. message access agent is used. Ø Handling the Message. The two protocols used to access messages are POP and IMAP4. Now its time to take a look at the architecture of e-mail with the help of four scenarios: First Scenario When the sender and the receiver of an E-mail are on the same system, then there is the need for only two user agents. Second Scenario In this scenario, the sender and receiver of an e-mail are basically users on the two different systems. Also, the message needs to send over the Internet. In this case, we need to make use of User Agents and Message transfer agents(MTA). Third Scenario In this scenario, the sender is connected to the system via a point-to-point WAN it can be either a dial-up modem or a cable modem. While the receiver is directly connected to the system like it was connected in the second scenario. Also in this case sender needs a User agent(UA) in order to prepare the message. After preparing the message the sender sends the message via a pair of MTA through LAN or WAN. Fourth Scenario In this scenario, the receiver is also connected to his mail server with the help of WAN or LAN. When the message arrives the receiver needs to retrieve the message; thus there is a need for another set of client/server agents. The recipient makes use of MAA(Message access agent) client in order to retrieve the message. In this, the client sends the request to the Mail Access agent(MAA) server and then makes a request for the transfer of messages.