Presentation on theme: "Computer Networks This PPT is Dedicated to my inner controller"— Presentation transcript:
1 Computer Networks This PPT is Dedicated to my inner controller AMMA BHAGAVAN – ONENESS Founders.Developed by, EDITED BY,S.V.G.REDDY, B.Keerthi Reddy,Associate professor, student of M.tech(SE).Dept.of CSE, GIT,GITAM UNIVERSITY.
2 OSI(OPEN SYSTEM INTERCONNECTION) model A model defines the stages or tasks of a protocol as it prepares to send dataOpen meaning standards available to all.The model is divided into seven distinct layersEach subsequent layer should perform a well- defined function and the layer boundaries are designed to minimize the information flow across the interfaces.
4 OSI MODEL LAYERS Application Layer Presentation Layer Session Layer Provides a user interface (examples: HTTP, SMTP)Includes file, print, database, app. ServicesPresentation LayerPresents the data (example: JPEG)Includes encoding techniques,encryption, compression and translation servicesSession LayerThis provides a session between source & destination and decides the mode of communication(simplex, half duplex & full duplex)
5 OSI MODEL LAYERS Transport Layer Network Layer Provides reliable delivery with alignment of packetsPerforms error detectionIncludes end to end connectionNetwork LayerProvides logical addressing and identifies the networkGenerates the Route to the destination
6 OSI MODEL LAYERS Data Link Layer Physical Layer Combines packets into bytes then into framesPerforms error detection (not correction)Provides Media access addressing (point-to- point) and identifies the client systemMedia Access Control and Data Link ControlPhysical Layerphysical movement of bits between devices.
8 TCP/IP MODELTCP (Transmission Control Protocol) is the main transport protocol utilized in IP networks. The TCP protocol exists on the Transport Layer of the OSI Model.The TCP protocol is a connection-oriented protocol which provides end-to-end reliability.Internet protocol is the set of techniques used by many hosts for transmitting data over the Internet.The TCP/IP model is a description framework for computer network protocols and it is evolved from ARPANET which was the world's first wide area network and a predecessor of the Internet.This model sometimes called internet model .
9 There are four layers in this model. Application layer:Defines how TCP/IP application protocols and how host programs interface with transport layer services to use the network. protocols regarding this layer are FTP,HTTP,SMTP,TELNET,SNMP.Transport layer:Provides communication session management between host computers. Defines the level of service and status of the connection used when transporting data. Protocols involved in this layer are TCP,UDP.Internet layer:Packages data into IP datagram's, which contain source and destination address information that is used to forward the datagram's between hosts and across networks. Performs routing of IP datagram's. Internet layer is also having some protocols ARP, RARP, IGMP, ICMP.Physical layer:The physical movement of bits from source to destination.
10 Multiple Access Protocols If multiple nodes tries to access the single channel for data transmission,CHANNEL
11 ALOHAHere every node is allowed to transmit its data packets in the same channelThen, when one node is transmitting data, then if some other node also transmits then it leads to COLLISIONSIn this ALOHA, lot of chances to have more collisionscollision probability increases:frame sent at t0 collides with other frames sent in[t0-1,t0+1]
12 PURE ALOHA EFFICIENCY Efficiency = 1/(2e) = .18 P(success by given node) = P(node transmits) .P(no other node transmits in [t0-1,t0] .P(no other node transmits in [t0,t0+1]= p . (1-p)N-1 . (1-p)N-1= p . (1-p)2(N-1)… choosing optimum p and then letting n -> Efficiency = 1/(2e) = .18
13 SLOTTED ALOHA Here every node is given an equal amount of time slot. when its turn comes, the node will transmit its data packets in that time slot .Here less chances to have collisions.
14 SLOTTED ALOHA EFFICIENCY Efficiency is the long-run fraction of successful slots when there are many nodes, each with many frames to sendSuppose N nodes with many frames to send, each transmits in slot with probability pprob that node 1 has success in a slot = p(1-p)N-1prob that any node has a success = Np(1-p)N-1
15 CARRIER SENSE MULTIPLE ACCESS(CSMA) Here the node listens to the channel before transmissionIf channel is idle: transmit entire frameIf channel is busy, defer transmissionHuman analogy: don’t interrupt
16 CSMA/CD (COLLISION DETECTION) If two nodes simultaneously sense the channel and if the channel is idle and both will attempt to transmit, which leads to collisions.if any two or more nodes senses the channel and gets the Idle status, then this protocol will take care by Blocking the nodes and minimise collisions.
17 COLLISION FREE PROTOCOLS Bit-Map Method:In this method, there will be N time slots. If node0 has a frame to send, it sets the bit ‘1’ during the first slot and transmit the frame in first slot. No other node is allowed to transmit during this slot.This is done for all the nodes. In general node j may declare the fact that it has a frame to send by inserting ‘1’ into slot j.The basic problem with this protocol is its inefficiency during low load. If a node has to transmit and no other node needs to do so, even then it has to wait for the bitmap to finish.
19 Binary Countdown:In this protocol, a node which wants to signal that it has a frame to send does so by writing its address into the header as a binary number.The arbitration is such that as soon as a node sees that a higher bit position that is 0 in its address has been overwritten with a 1, it gives up.The final result is the address of the node which is allowed to send. After the node has transmitted the whole process is repeated all over again.Given below is an example situation. Nodes AddressesA 0010 , B 0101 , C 1010 , D Node C 1010 having higher priority gets to transmit.The problem with this protocol is that the nodes with higher address always wins. Hence this creates a priority which is highly unfair and hence undesirable
21 LANLocal area network - A group of computers that share a common connection and are usually in a small area or even in the same building. For example an office or home network. They are usually connected by Ethernet cables and have high speed connections. If it was a wireless setup it would be called a WLAN, which would have a lower connection speed
23 MANMetropolitan area network - This is a larger network that connects computer users in a particular geographic area or region. For example a large university may have a network so large that it may be classified as a MAN. The MAN network usually exist to provide connectivity to local ISPs, cable TV, or large corporations. It is far larger than a LAN and smaller than a WAN. Also large cities like London and Sydney, Australia have metropolitan area networks.
25 WANWide area network - This is the largest network and can interconnect networks throughout the world and is not restricted to a geographical location. The Internet is an example of a worldwide public WAN. Most WANs exist to connect LANs that are not in the same geographical area.
33 ETHERNET FRAME STRUCTURE Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet framePreamble:7 bytes with pattern followed by one byte with patternUsed to synchronize receiver, sender clock rates (Manchester encoding)
34 ETHERNET FRAME STRUCTURE Addresses: 6 bytesif adapter receives frame with matching destination address, or with broadcast address (eg ARP packet), it passes data in frame to net-layer protocolotherwise, adapter discards frameType: multiple network layer protocols may be in use at the same time on the same machine, when ethernet frame arrives, kernel has to know it .CRC: checked at receiver, if error is detected, the frame is simply dropped
35 ETHERNET SPECIFICATIONS Coaxial CableUp to 500mTaps> 2.5m apartTransceiverIdle detectionSends/Receives signalRepeaterJoins multiple Ethernet segments< 5 repeaters between any two hosts< 1024 hosts
36 ETHERNET MAC ALGORITHM Sender/TransmitterIf line is idle (carrier sensed)Send immediatelySend maximum of 1500B data (1527B total)Wait 9.6 s before sending againIf line is busy (no carrier sense)Wait until line becomes idleIf collision detectedStop sending and jam signalTry again later
37 ETHERNET MAC ALGORITHM Node ANode BAt time almost T,node A’s message hasalmost arrivedNode B starts transmission at time TNode A starts transmission at time 0How can we ensure that A knows about the collision?
38 MANCHESTER ENCODINGThis is a return to zero (RTZ) signal.Each bit period is divided into two equal intervals.Binary “1” -> High Voltage level in the first half and Low Voltage level in the second half.Binary “0” -> Just opposite of the above.
39 1 0 0 0 0 1 0 1 1 1 1 DIFFERENTIAL MANCHESTER ENCODING In each bit interval there is a transition of the level in the middle.If the bit value is “0” then there is a presence of a transition at the start of interval.If the bit value is “1”, then there is absence of a transition at the start of interval.One of the properties of this signal is that is self clocking.
41 Switched ethernetAn Ethernet LAN that uses switches to connect individual hosts or segments. This type of network is sometimes called a desktop switched Ethernet.In the case of individual hosts, the switch replaces the repeater and effectively gives the device full 10 Mbps bandwidth (or 100 Mbps for Fast Ethernet) to the rest of the network.In the case of segments, the hub is replaced with a switching hub.Switched Ethernets are becoming very popular because they are an effective and convenient way to extend the bandwidth of existing Ethernets.
42 FAST ETHERNET (100BASE-T) How to achieve 100 Mbps capacity? Media Independent Interface provides three choices.LLCData LinkLayerMACConvergence SublayerPhysicalLayerMIIMedia Independent InterfaceMedia Dependent Sublayer
43 FAST ETHERNET [IEEE 802.3U] Three Choices Fast ethernet uses fiber distributed data interface(FDDI)FDDI CHARACTERISTICS:100 Mbps data rateDistances of up to 200 kmUp to 1000 hosts attachedBased on fiber optic cabling
44 GIGABIT ETHERNET (1000 BASE X) Provides speeds of 1000 Mbps (i.e., one billion bits per second capacity) for half-duplex and full-duplex operation.Uses Ethernet frame format and MAC technologyCSMA/CD access method with support for one repeater per collision domain.Backward compatible with 10 BASE-T and 100 BASE-T.Uses full-duplex Ethernet technology.Uses 802.3x flow control.All Gigabit Ethernet configurations are point-to- point!
45 GIGABIT ETHERNET TECHNOLOGY Gigabit Ethernet cabling.1000 BASE SX fiber - short wavelength1000 BASE LX fiber - long wavelength1000 BASE CX copper - shielded twisted pair1000 BASE T copper - unshielded twisted pair
47 GIGABIT ETHERNET(a) A two-station Ethernet. (b) A multistation Ethernet.
48 WIRELESS LANA wireless LAN (or WLAN, for wireless local area network, sometimes referred to as LAWN, for local area wireless network) is one in which a mobile user can connect to a local area network (LAN) through a wireless(radio) connection.The IEEE group of standards specify the technologies for wireless LANs standards use the Ethernet protocol and CSMA/CA (carrier sense multiple access with collision avoidance) for path sharing and include an encryption method
49 WIRELESS LANS The 802.11 Protocol Stack The 802.11 Physical Layer The MAC Sub layer ProtocolThe Frame StructureServices
51 Wireless LAN uses different parts of the spectrum. They are Infrared - speed upto 1 mbps - signal which is used in TV remote control.FHSS(frequency hopping spread spectrum) & DSSS(direct sequence spread spectrum) - speed upto 1- 2 mbps – signal which is used in cordless telephones which does not require licensing.OFDM(orthogonal frequency division multiplexing) - speed upto 54 mbps.HRDSSS(high rate DSSS) - speed upto 11 mbpsOFDM(orthogonal frequency division multiplexing) - another version of OFDM – speed upto 54 mbps at a different frequency band.
52 THE 802.11 MAC SUBLAYER PROTOCOL (a) The hidden station problem. (b) The exposed station problem.
53 THE 802.11 MAC SUBLAYER PROTOCOL The hidden station problem – In fig(a), station C is transmitting to station B.If A senses the channel, it will not hear anything and falsely conclude that it may now start transmitting to B.The exposed station problem – In fig(b), B wants to send to C so it listens to the channel. When it hears a transmission, it falsely concludes that it may not send to C, even though A may be transmitting to D(not shown).
54 The MAC sub layer is responsible for the channel allocation procedures, protocol data unit(PDU) addressing, frame formatting, error checking and fragmentation and reassemblyThe transmission mode can operate in the contention mode exclusively, requiring all stations to contend for the channel for each packet transmitted.IEEE three different types of frames: management ,control and dataThe management frames is used for station association and disassociation with the AP, timing and synchronization, and authentication and deauthentication.Control frames is used for handshaking during the CP, for positive acknowledgments during the CP, and to end the CFP.Data frames are used for the transmission of data during the CP and CFP, and can be combined with polling and acknowledgments during the CFP.
56 THE 802.11 MAC SUBLAYER PROTOCOL Once A received CTS it starts to send frame and starts an ACK timerB transmits ACK frame saying that frame arrived intactA wants to transmit to BC in range of AD in range of B but not AThe use of virtual channel sensing using CSMA/CA.If A’s ACK timer times out before receipt of ACK frame from B the whole protocol needs to be repeated
57 THE 802.11 FRAME STRUCTURE The 802.11 data frame. Protocol version: Allows 2 versions of the protocol to operate in the same cellSubtype: CTS, RTS etcFrame Type: Data Control Management
58 The 802.11 data frame. THE 802.11 FRAME STRUCTURE To & From DS: Cell 1Cell 3Base stationsTo & From DS:Indicates if the frame is going to or coming from the intercell distribution systems, I.e. EthernetCell 2Outside world
59 THE 802.11 FRAME STRUCTURE The 802.11 data frame. Pwr: used by base station to send station into and out of sleep state: I.e. Power managementMarks the retransmission of an earlier frameMF : More Fragments of a Frame to follow
60 THE 802.11 FRAME STRUCTURE The 802.11 data frame. Specifies that frame body has been encrypted:WEP: Wired Equivalent PrivacySender has more frames to followIndicates if frames must be processed in ORDER
61 Source & destination addresses + CELL source & destination addresses THE FRAME STRUCTUREThe data frame.Sequence: allows fragments to be numbered12 bits identify frame 4 bits identify fragmentHow long the frame and acknowledgement will occupy the channelSource & destination addresses + CELL source & destination addresses
62 THE 802.11 FRAME STRUCTURE The 802.11 data frame. Data payload: up to 2312 bytesChecksum
63 802.11 SERVICES Distribution Services Association Disassociation Mobile stations OR base station breaks relationshipStation: before shutting down or leavingBase station: going down for maintenanceDistribution ServicesAssociationDisassociationReassociationDistributionIntegrationAllows mobile station to switch base stations i.e. move from one cell to anotherDetermines how to route frames sent to base stationi.e. from within cellfrom outside of cellHandles translation from format to format required for destination network
64 Intracell Services 802.11 SERVICES Authentication Deauthentication Single CellSERVICESIntracell ServicesOnce accepted by Base station mobile station must authenticate itself – prove it belongs to the networkAuthenticationDeauthenticationPrivacyData DeliveryBase station send a challenge frame: see if mobile station knows secret key (password)Mobile station returns the challenge frame encrypted using the keyMobile breaks connection and will need to authenticate again if it wants back into the networkEncryption & DecryptionRC4 algorithmHigher layers must deal with detecting and correcting errors
65 BLUETOOTHBluetooth is a specification for the use of low-power radio communications to wirelessly link phones, computers and other network devices over short distances.Bluetooth technology was designed primarily to support simple wireless networking of personal consumer devices and peripherals, including cell phones, PDAs, and wireless headsets.Wireless signals transmitted with Bluetooth cover short distances, typically up to 30 feet (10 meters). Bluetooth devices generally communicate at less than 1 Mbps.Bluetooth networks feature a dynamic topology called a piconet or PAN. Piconets contain a minimum of two and a maximum of eight Bluetooth peer devices. Devices communicate using protocols that are part of the Bluetooth Specification.
66 BLUETOOTH ARCHITECTURE Two piconets can be connected to form a scatter net.
67 NETWORK TOPOLOGY Radio Designation Piconet Scatter net Connected radios can be master or slaveRadios are symmetric (same radio can be master or slave)PiconetMaster can connect to seven simultaneous or 200+ active slaves per piconetEach piconet has maximum capacity (1 MSPS)Unique hopping pattern/IDScatter netHigh capacity systemMinimal impact with up to 10 piconets within rangeRadios can share piconets!
69 THE BLUETOOTH PROTOCOL STACK The version of the Bluetooth protocol architecture.
70 In the above fig, physical radio layer deals with radio transmission and modulation. Next, baseband layer deals with time slots and how these slots are grouped into frames.Next, Link Manager handles the establishment of logical channels between devices including power management, authentication & quality of service.Next, middleware layer is designed to deal with legacy devices such as Rfcomm, telephony, service discovery.Last, is the application layer which make use of the protocols ij lower layers to get their work done.
71 THE BLUETOOTH FRAME STRUCTURE A typical Bluetooth data frame.
72 The frame structure begins with an access code that usually identifies the master so that slaves within radio of two masters can tell which traffic is for them.The 54-bit header contains typical MAC sub layer fieldsThe data field which is up to 2744 bits for a single time slot, the format is the same except that data field is 240 bits.Within the header the Address field identifies which of the eight active devices the frame is intended for.Type means it tells the type of frame-ACL(asynchronous connectionless) or SCO(synchronous connection oriented)The flow bit is asserted by a slave when the buffer is full and cannot receive any more data.The acknowledgment bit is used for piggyback an ACK onto a frameThe sequence bit is used for number the frames to detect retransmissions.
73 Network devicesREPEATER: At the bottom,in the physical layer,we find the “repeaters”.These are analog devices that are connected to two table segments.A signal appearing on one of them is amplified and put out on the other.Repeaters do not understand frames,packets,or headers.They understand volts.
74 HubA HUB has number of input lines that it joins electrically.HUBs differ from repeaters in that they do not usually amplify the incoming signals and are designed to hold multiple linecards each with multiple inputs,but the differences are slight.
75 BridgeWe find bridges and switches in datalink layer.A bridge connects two or more LANs .When frame arrives,software in the bridge extracts the destination address from the frame header and looks it up in a table to see where to send the frame .
76 switchA network switch is a computer networking device that connects network segments.
77 RouterIt is a device like a switch that connects more networks or computers and which has inbuilt software to find the routes & their shortest paths.
78 GatewayThese connect two computers that use different connection oriented transport protocols. Application gateways understand the format and contents of the data and translate messages from one format to another.
82 BRIDGEBridge is a network device which is used to join two small & different networks or it is used to divide a big network into two segments.It takes the request from one network/segment and passes to other network/segment and performs the data transmission.In fig 4.40, bridge acts as a mediator between two different networks & and performs data transmission.PORTSABEFBRIDGECDGH
83 SELECTIVE FORWARDINGABEFBRIDGECDGHIf A sends a frame to E - the frame must be forwarded by the bridge.If A sends a frame to B - there is no reason to forward the frame.
84 NETWORK LAYER Network Layer Design Issues Store-and-Forward Packet SwitchingServices Provided to the Transport LayerImplementation of Connectionless ServiceImplementation of Connection-Oriented ServiceComparison of Virtual-Circuit and Datagram Subnets
85 Store-and-Forward Packet Switching Switching refers to the transmission of packets from h1 to h2 passing through different network devices.A device when it gets a data packet from source, it stores and acquire the route and it forwards to the destination.
86 IMPLEMENTATION OF CONNECTIONLESS SERVICE Here we will not have a dedicated channel from H1 to HData packets will be transmitted in the available & shortest routes.
87 IMPLEMENTATION OF CONNECTION-ORIENTED SERVICE Here we will have a dedicated channel from H1 to HData packets will be transmitted in the same dedicated channel.
88 COMPARISION OF VIRTUAL-CIRCUIT AND DATAGRAM SUBNETS
89 ROUTING ALGORITHMS The Optimality Principle Shortest Path Routing FloodingDistance Vector RoutingLink State RoutingHierarchical RoutingBroadcast RoutingMulticast RoutingRouting for Mobile HostsRouting in Ad Hoc Networks
90 THE OPTIMALITY PRINCIPLE Optimality principle: if router j is on the optimal path from router I to router k, then the optimal path from j to k also falls along the same route.F->A->B best path =>A->B best pathOptimal routes from all sources to a destination form a tree rootedat the destinationa) A subnet. (b) A sink tree for router B.
91 SHORTEST PATH ROUTING (DİJKSTRA) Here we need to find the shortest route from A to H.Start from A and go to B as the AB is smaller than AB(2) and AG(6). From B, go to E, then to G.Here we can reach H from E through (EF, FH) or (EG,GH).But the route (EF,FH) will be taken as it is lesser(shortest path).Hence A,B,E,F,H is the shortest route.
92 FLOODINGAnother static routing algorithm is flooding: Every incoming packet is sent out on every outgoing line except the one it arrived on.Measures for damming the flood:A hop counter is included in the header of each packet, which is decremented at each hop.A packet is discarded when the counter reaches zero.A sequence number is included in each packet.Each router maintains a list per source router telling which sequence numbers originating at that source have already been seen.A packet is discarded when it contains a sequence number which is in the list.Selective flooding: an incoming packet is sent on those lines that are going approximately in the right direction.Random walk: an incoming packet is sent on a line at random.Possible applications of flooding:In military applications, to withstand large numbers of routers crashes at any instant.As a metric (always choose the shortest path) against which other routing algorithms can be compared.
93 DISTANCE VECTOR ROUTING (a) A subnet. (b) Input from A, I, H, K, and the newrouting table for J.
94 DISTANCE VECTOR ROUTING Used by ARPANET, Internet (RIP), DECnet, Novell (IPX), AppleTalk, and Cisco routers.Each router maintains a routing table, with one entry for each other router in the subnet.Each entry contains two parts: the preferred outgoing line for that destination, and the estimation of the delay time (or number of hops, distance, queue length, etc.) to that destination.Each router knows the “distance” to each of its neighbors and updates its routing table based on the routing information from its neighbors.Each router periodically exchanges explicit routing information with each of its neighbors.Example – In fig(b), It shows the delay(time) vectors from station A to all other stations.i.e. from A to A - 0, A to B -12, A to C - 25 etc.Now suppose we want to transmit packet from J to G. Then at a particular moment of time the available routes are (JA,AG),(JI,IG), (JH,HG) & (JK,KG).The delay vectors for (JA,JG ),(JI,IG – ), (JH,HG – 12+6) & (JK,KG – 6+31).From the above we can say that (JH,HG -12+6) is the shortest path where we can transmit packet with less delay .
95 THE COUNT-TO-INFINITY PROBLEM A comes up: Good news spreads fastA goes down: Bad news spreads slowExample -In fig(b), distance vectors from A to B,C,D,E are 1,2,3,4.suddenly if A fails, B cannot reach A directly, Then it thinks that it can reach A through C i.e. (BC+CA – 1+2 = 3).Now AB is marked as the 3 which is the latest distance vector. Then now C will modify its distance vector as (CB+CA = 1+3 = 4).Lastly if C to A is 4, then B will modify it as (BC+CA = 1+4 = 5)…Like this the process goes on to infinity modifying the distance vectors.
96 LINK STATE ROUTINGDistance vector routing was used in the ARPANET until 1979, when it was replaced by link state routing.Each router must do the following:Discover its neighbors, learn their network address.Measure the delay or cost to each of its neighbors.Construct a packet telling all it has just learned.Send this packet to all other routers.Compute the shortest path to every other router.
97 LEARNING ABOUT THE NEIGHBOURS When a router is booted, it sends a HELLO packet to each outgoing line and all the routers in the LAN respond back telling its system details. Like this, a Router can trace its neighbours.(a) Nine routers and a LAN. (b) A graph model of (a).
98 MEASURING LINE COSTThe most direct way to determine this delay is to send over the line a special echo packet that the other side is required to send back immediately. By measuring the Round-trip time and dividing by two, we can get the delay.even for better results, the test can be conducted several times and the average can be used.A subnet in which the East and West parts are connected by two lines.
99 BUILDING LINK STATE PACKETS Once the information needed for the exchange has been collected, the next step is for each router to build a packet containing all the data as below in fig(b).(a) A subnet. (b) The link state packets for this subnet.
100 DİSTRİBUTİNG THE LİNK STATE PACKETS The link state packets of previous phase will be distributed in the network. Then the routers getting the first ones will change their routes.FloodingEach router records the (source, seq. no.)Only flood and record packets from a source with higher seq.no. than previous will be recorded.Sequence numbers or router records of them can get corrupt.Include age after seq. no. and decrement it per second. Discard packets with age zero.Lastly, Once all the process is over, Run Dijkstra’s algorithm to know the shortest routes to all the destinations.
102 HIERARCHICAL ROUTINGTo save the memory, CPU time, and network bandwidth, for maintaining routing tables, hierarchical routing is used when the number of routers in the network is very large. In the above fig(a), some set of routers in the network are grouped as a Region. In a region, all the routers will have the complete information about all the other routers and how to route their packets in the same region.i.e.1A,1B,1C of region1 will know about each other. But a router of region1 will not have any details about router of region2. i.e. 1A router of region1 will not know about 2A router of region2.
103 BROADCAST ROUTİNG Broadcasting packets can be done in five ways Send a distinct packet to each destinationFlooding - Each node copies the packet to all outgoing linesMultidestination routing – first, we know the list of destinations or by using bitmap. Then we determine the list of output lines for the destinations.Sink tree/spanning tree: Copy on all the spanning tree lines except the one packet arrived from.Reverse path forwarding: From a router,if any packet arrives, it will check whether packets are meant to be sent to the source. Then, the broadcast packet arrived on a line other than the preferred one for reaching the source, the packet is discarded as a likely duplicate.The last three methods are BW efficient.
104 MULTICAST ROUTİNGThis process will be done in two ways The packet can be broadcast to all the nodes in the network though it is not required to send to unintended recipients. Next, all the destinations can be formed as a group and the packet can be sent to the group which is nothing but multicasting.
106 -contd..Mobile host is a Laptop carrying by a person and if he want to read an e- mail and some Network need to identify him and help in the data transmission. Foreign agent – Foreign network, Home agent – Home networkThis will be done in a systematic process as follows(see fig above)Basically each Foreign agent broadcasts a packet telling its existence, then mobile host can request it. Otherwise, mobile host will send a request packet for any foreign agent.Then mobile host requests foreign agent by giving its home agent details.Then foreign agent contacts home agent with the given security information by the mobile host.If home agent feels ok with the foreign agent, then it will permit foreign agent to carry on the transmission.When foreign agent gets positive acknowledgement from home agent, then it will make entry of this mobile host in its table and performs the data transmission.
107 ROUTING IN ADHOC NETWORKS -No fixed router (base station), router and host are on the same mobile machine and network is a set of machines that communicate with their neighbors.-Dynamic topology, validity of paths change spontaneously.Possibilities when the routers are mobile:Military vehicles on battlefield.No infrastructure.A fleet of ships at sea.All moving all the timeEmergency works at earthquake .The infrastructure destroyed.A gathering of people with notebook computers.In an area lacking
108 ON DEMAND ROUTE DISCOVERY (AODV) Graph of nodes (router+host). Connected by a line only if two nodescommunicate directly (not necessarily in each other’s range)(a) Range of A's broadcast.(b) After B and D have received A's broadcast.(c) After C, F, and G have received A's broadcast. (B and D reject each other’s broadcast)(d) After E, H, and I have received A's broadcast.Shaded nodes are new recipients. Arrows show possible reverse routes.
109 - contd.. ROUTE REQUEST packet processing (broadcast): -if (Source address,Request ID) is new, record pair- else discard packet and stop-if a fresh route (assessed by Dest. Seq. #) to destination is known, send back ROUTE REPLY-else increment Hop count, broadcast ROUTE REQUEST , make an entry in reverse route table and start a timer.
110 - Contd .. Lifetime: how long the route is valid Hop count: how far away the destination isROUTE REPLY packet processing at each intermediate node on the way back (unicast):-make an entry into forward routing table for a route to destination, if no such route exists, route exists, but is old (Dest. Seq. #), or route exists, but new route is shorter (Hop Count)-nodes not on the reverse path erase their reverse route table entry after timer expires.
111 -contd .. In order to limit traffic due to many broadcasts ROUTE REQUEST is sent in areas inside of increasingly wider rings.Enabled by setting time to live to 1 at first attempt and 2,3,... at further attempts and decreasing time to live by one at each hop.
112 ROUTE MAINTENANCE (a) D's routing table before G goes down. Discover which neighbors are no longer available by either periodicallypolling them or when no reply comes back for a packet sent.Purge destinations reached over that neighbor that is now unavailableInform those active neighbors (users) that reach any such destination over that unavailable neighbor.(a) D's routing table before G goes down.(b) The graph after G has gone down.
113 NODE LOOKUP IN PEER-TO-PEER NETWORKS A set of 32 node identifiers arranged in a circle. The shaded onescorrespond to actual machines. The arcs show the fingers fromnodes 1, 4, and 12. The labels on the arcs are the table indices
114 CONGESTIONWhen too many packets are present in the subnet, performance degrades.This situation is called “congestion”.Congestion mainly occurs due to Insufficient memory, slow processors, low bandwidth lines.
115 CONGESTION PREVENTION POLICIES Policies that affect congestion.
116 CONGESTION CONTROL IN VIRTUAL-CIRCUIT SUBNETS In fig(a), there are two areas where congestion has taken place.In fig(b), construct a new sink tree by just avoiding the congested devices and find the new shortest routes for data transmission.
117 CONGESTION CONTROL IN DATAGRAM SUBNETS Let us now turn to some approaches that can be used in datagram subnets.a) Warning Bit:The old DECNET architecture signaled the warning state by setting a special bit in the packet’s header.b) Choke Packets:The router sends a choke packet back to the source host,giving it the destination found in the packet.c) Hop-by-Hop Choke Packets(see fig below): Here it tells the congestion status to the previous Hop and requests to reduce or stop the transmission.d) Load Shedding: When none of the methods make the congestion disappear,routers can bring out the heavy artillery:”load shedding”. Load shedding is a fancy way of saying that when routers are being inundated by packets that they cannot handle,they just throw them away.e) Jitter control: For applications such as audio and video streaming,it does not matter much if the packets take 20 msec or 30 msec to be delivered ,as long as the transit time is constant.The variation in the packet arrival times is called “jitter”.The range chosen must be feasible ,of course.It must take into account the speed_of_light transit time and the minimum delay through the routers and perhaps leave a little stack for some inevitable delays.
118 HOP-BY-HOP CHOKE PACKETS (a) A choke packet that affectsonly the source.(b) A choke packet that affectseach hop it passes through.
119 IP ADDRESS(IPV4)Here it contains five classes of addresses i.e. class A,B,C,D,E.IP address is divided into 4 segments, each 8 bit size i.e. 4 byte lengthThe Range of values for any class are as below.Example: take class C- starts with 110.Then minimum value for that address in binary isWhich is equivalent toThen maximum value for the above address in binary isWhich is equivalent to
120 THE IP PROTOCOLThe IPv4 (Internet Protocol) header.
121 IPV6 HEADER It is the advancement to IPV4. These are 16 byte length addresses.The Header is simplified to 7 fields.The Header fields are optional too.It is a big advance in security.More attention is given for the quality of service.
122 TRANSPORT LAYER - SERVICE PRIMITIVES To allow users to access the transport service,the transport layer must provide some operations to application programs,that is,a trasport service interface. Each transport service has its own interface. There are 5 trasport primitives. 1.LISTEN 2.CONNECT 3.SEND 4.RECEIVE 5.DISCONNECT
123 THE PRIMITIVES FOR A SIMPLE TRANSPORT SERVICE PACKET SENTMEANINGLISTEN(NONE)BLOCKS UNTIL SOME PROCESS TRIES TO CONNECTCONNECTCONNECTION REQACTIVELY ATTEMPT TO ESTABLISH A CONNECTIONSENDDATASEND INFORMATIONRECEIVEBLOCK UNTIL A DATA PACKET ARRIVESDISCONNECTDISCONNECTION REQTHIS SIDE WANTS TO RELEASE THE CONNECTION
124 BERKELEY SOCKETSThese are another set of transport primitives.The socket primitives used in Berkeley UNIX for TCP.These primitives are widely used for internet programming. There are 8 primitives. 1.SOCKET 2.BIND 3.LISTEN 4.ACCEPT 5.CONNECT 6.SEND 7.RECEIVE 8.CLOSE
125 THE SOCKET PRIMITIVES FOR TCP 1.SOCKET: It creates a new end point and allocates table space for it with in the transport entity. 2.BIND:Network addresses are assigned using the BIND primitive. 3.LISTEN:It allocates space to queue incoming calls for the case that several clients try to connect at the same time. 4.ACCEPT:To block waiting for an incoming connection,the server executes an ACCEPT primitive. 5.CONNECT:This primitive blocks the caller and actively starts the connection process. 6&7.SEND &RECEIVE: Both sides can now use SEND and RECV to transmit and receive data over the full_dulpex connection. 8.CLOSE:When both sides have executed a CLOSE primitive,the connection is released.
126 ELEMENTS OF TRANSPORT PROTOCOLS The transport service is implemented by a “transport protocol” used between the two transport entities.In some ways ,transport protocolos resemble the data link protocols. Both have to deal with error control,sequencing,flow control among other issues.To perform these operations transport layer have some elements. Those elements are the following. 1.ADDRESSING. 2.CONNECTION ESTABLISHMENT 3.CONNECTION RELEASE 4.FLOW CONTROL AND BUFFERING 5.MULTIPLEXING 6.CRASH RECOVERY
127 1.ADDRESSINGWhen an application process wishes to set up a connection to a remote application process,it must specify which one to connect to.The method normally used is to define transport addresses to which process can listen for connection requests. In the internet these end points are called PORTS.We will use the generic term TSAP(transport service access point).The analogous end points in the network layer are then called NSAPs.
128 TSAP,NSAP AND TRANSPORT CONNECTIONS APPLICATION TSAP1208PROCESSTRANSPORT CONNECTIONNSAPSERVER SERVER2TSAP TSAP 1836NSAPHOST 2HOST 1
129 CONNECTION ESTABLISHMENT The problem with establishing a connection occurs when the subnet can lose, store, and duplicate packets.How to deal with the problem of delayed duplicated and establish connections in a reliable way ?Method 1: use throwaway TSAP addresses.Method 2:Each connection is assigned a connection identifier (i.e., a sequence number incremented for each connection established), chosen by the initiating party, and put in each TPDU, including the one requesting the connection.Method 3:Let be some small multiple of the true maximum packet lifetime. is protocol-dependent. If we wait a time after a packet has been sent, we can be sure that all traces of it are gone.
130 CONNECTION RELEASEReleasing a connection is easier than establishing one. Asymmetric release is abrupt and may result in data loss, as shown in Fig. .Abrupt disconnection with loss of data. No data Delivered After a Disconnect requestCRACKDATADATADRHOST1HOST2
131 One way to avoid data loss is to use symmetric release, in which each direction is released independently of the other one.A more sophisticated release protocol is required to avoid data loss.says:``I am done. Are you done too ?''If responds:``I am done too. Goodbye.''
132 FLOW CONTROL AND BUFFERING How connections are managed while they are in use ?For flow control, a sliding window is needed on each connection to keep a fast transmitter from overrunning a slow receiver (the same as the data link layer).The sender should always buffer outgoing TPDUs until they are acknowledged.The receiver may not dedicate specific buffers to specific connections. Instead, a single buffer pool may be maintained for all connections. When a TPDU comes in, if there is a free buffer available, the TPDU is accepted, otherwise it is discarded.
133 How large the buffer size should be ? However, for high-bandwidth traffic (e.g., file transfers), it is better if the receiver dedicate a full window of buffers, to allow the data to flow at maximum speed.How large the buffer size should be ?TPDU1TPDU2TPDU3CHAINED FIXED SIZE BUFFERSTPDU4CHAINED VARIABLE SIZED BUFFERSTPDU5ONE LARGE SIZED CIRCULAR BUFFER
134 MULTIPLEXING The reasons for multiplexing: To share the price of a virtual circuit connection: mapping multiple transport connections to a single network connection (upward multiplexing).To provide a high bandwidth: mapping a single transport connection to multiple network connections (downward multiplexing).
135 TRANSPORT ADDRESSLAYERS43NETWORK ADDRESS2ROUTER LINES1UPWARD MULTIPLEXINGDOWNWARD MULTIPLEXING
136 CRASH RECOVERYIn case of a router crash, the two transport entities must exchange information after the crash to determine which TPDUs were received and which were not. The crash can be recovered by retransmitting the lost ones.It is very difficulty to recover from a host crash.No matter how the sender and receiver are programmed, there are always situations where the protocol fails to recover properly.
137 OK=protocol functions currectly DUP=protocol generates a duplicate message LOST=protocol losses a message DIFFERENT COMBINATIONS OF CLIENT AND SERVER STRATEGYFIRST ACK,THEN WRITEFIRST WRITE,THEN ACKSTRATEGY BY SENDING HOSTAC(W)AWCC(AW)C(WA)WACWC(A)ALWAYS RETRANSMITNEVER RETRANSMITRETRANSMIT IN S0RETRANSMIT IN S1OKDUPLOSTOKDUPLOSTSTRATEGY USED BY RECEIVING HOST
138 TRANSMISSION CONTROL PROTOCOL(TCP) TCP is a connection oriented transport protocol designed to work in conjunction with IP. TCP provides its user (application layer) with the ability to transmit reliably a byte stream to a destination and allows for multiplexing multiple TCP connections within a transmitting or receiving host computer. TCP was specifically designed to provide a reliable end-to-end byte stream over an unreliable internet work.
139 TCP SERVICE MODELTCP service is obtained by creating end points called “SOCKETS”.Each socket consists of a socket number and port number.A single daemon (called the inetd in Unix) waits on multiple ports for an incoming connection.Port numbers below 1024 are called “well_known ports” and are reserved for standard services.
140 SOME ASSIGNED PORTS PORT PROTOCOL USE 21 FTP FILE TRANSFER 23 TELNET REMOTE LOGIN25SMTP69TFTPTRIVIAL FILE TRANSFER PROTOCOL79FINGERLOOK UP INFORMATION ABOUT A USER80HTTPWORLD WIDE WEB110POP-3REMOTE ACCESS119NNTPUSE NET NEWS
142 Sequence number is used to mark the first byte. acknowledgement number is the next byte that is expected. Note that each byte is marked with sequence number.Header Length tells how many 32-bit words are in the header.Following the Header Length is an unused 6 bit fieldURG is the urgent pointer (set to 1 if used). Indicates abyte offset from the current sequence number at which urgent data are to be found. Typically not used.
143 ACK bit is set to1 to indicate that the acknowledgment number is valid ACK bit is set to1 to indicate that the acknowledgment number is valid. The value 0 means don’t use the acknowledgement number.PSH indicates PUSHed data; i.e. a request to the receiver to deliver the received data to the application and not buffer it.RST is used to reset the connection.SYN is used to establish connections. A connection request will typically have SYN=1 and ACK=0.connection reply carries SYN=1 and ACK=1
144 FIN is used to teardown a connection. The window size tells how many bytes may be sent starting at the byte acknowledged. Primarily this is used for flow control. Recall that TCP uses sliding window protocol.Checksum is used for error detection.The options are typically used for some other information not included in the standard header fields.Such as options may include information on how much TCP payload a host is willing to receive and how much to back track during retransmissions.
145 TCP CONNECTION ESTABLISHMENT Connections are established in TCP by means of the three-way handshake.“Three-way handshake”synchronies both ends of a connection by enabling both sides to agree upon initial sequence numbers.Example-Host A starts a connection to host B.A sends a packet with a random initial sequence number and SYN bit set.Host B receives the packet, creates its own packet with SN bit on, a random sequence number and the ACK value setHost A sends a reply packet in a similar fashion as B, without the SYN bit.
146 TCP CONNECTION ESTABLISHMENT -NORMAL CASE SYN(SEQ=X)TIMESYN(SEQ=Y,ACK=X+1)(SEQ=X+1,ACK=Y+1)HOST BHOST A
147 TCP CONNECTION RELEASE Although TCP connections are fullduplex,to understand how connections are released it is best to think of them as a pair of simplex connections. Each simplex connection is released independently of its sibling,To release a connection,either party can send a TCP segment as no more data to transmit. When the FIN is acknowledged,that direction is shut down for new data.When both directions have been shutdown,the connection is released.dire
148 TCP CONNECTION MANAGEMENT MODELING The steps required to establish and release connections can be represented using 11 states. In each state certain events are legal.When a legal event happens,some action may be taken.If some other event happens,an error is reported. Each connection starts in the CLOSED state.It leaves that state when it does either a passive open or an active open. A connection is established and the state becomes ESTABLISHED.Connection release can be initiated by either side.When it is complete the state returns to CLOSED.
149 THE STATES USED IN TCP STATES DESCRIPTION CLOSED NO CONNECTION IS ACTIVE OR PENDINGLISTENTHE SERVER IS WAITING FOR AN INCOMING CALLSYN RCVDA CONNECTION REQUEST HAS ARRIVED,WAIT FOR ACKSYN SENTTHE APPLICATION HAS STARTED TO OPEN CONNECTIONESTABLISHEDTHE NORMAL DATA TRANSFER STATEFIN WAIT 1THE APPLICATION HAS SAID IT IS FINISHEDFIN WAIT 2THE OTHER SIDE HAS AGREED TO RELEASETIMED WAITWAIT FOR ALL PACKETS TO DIE OFFCLOSINGBOTH SIDES HAVE TRIES TO CLOSE SIMULTANIOUSLYCLOSE WAITTHE OTHER SIDE HAS INITIATED A RELEASELAST ACK
150 TCP TIMER MANAGEMENTTCP uses multiple timers to do its work.The most imporant of these is the “retransmission timer”. Problem: how long should be the timeout interval of the retransmission timer? Solution: dynamically adjust the timeout interval based on continuous measurements of network performance. Estimating round trip time (RTT):Record time from segment sent to ACK receipt, denoted by MRTT = a*RTT + (1-a)*M, typically a = 7/8.
152 TCP CONGESTION CONTROL When the load offered to any network is more than it can handle,congestion builds up.The internet is no exception.Now let us look at the “Internet congestion control algorithm.” It uses a third parameter,the “threshold”,initially 64 KB,in addition to the receiver and congestion windows.When a timeout occurs,the threshold is set to half of the current congestion window ,and the congestion window is reset to one maximum segment.eshold is s
153 TCP CONGESTION CONTROL 20avoidanceCongestion occursFast recoverywould cause achange here.15CongestionwindowThreshold10Slowstart5Round-trip times
154 WIRELESS TCPTCP congestion control algorithm leads to poor performance on a wireless network.When a packet is lost on a wired network, the sender should slow down.When a packet is lost on a wireless network, the sender should speed up. How to make the correct decision on a timeout when the path from sender to receiver is heterogeneous?
156 USER DATAGRAM PROTOCOL It is also fast compared to the use of TCP, since there is no connection establishment phase. Moreover, UDP is important since RTP (Real time Transport Protocol) is supported over UDP.UDP (User Datagram Protocol) is a simple OSI transport layer protocol for client/server network applications based on Internet Protocol (IP). UDP is the main alternative to TCP and one of the oldest network protocols in existence, introduced in 1980.UDP is often used in videoconferencing applications or computer games specially tuned for real-time performance. To achieve higher performance, the protocol allows individual packets to be dropped (with no retries) and UDP packets to be received in a different order than they were sent as dictated by the application.
158 UDP port numbers allow different applications to maintain their own channels for data similar to TCP. UDP port headers are two bytes long; therefore, valid UDP port numbers range from 0 toThe UDP datagram size is a count of the total number of bytes contained in header and data sections. As the header length is a fixed size, this field effectively tracks the length of the variable-sized data portion (sometimes called payload). The size of datagrams varies depending on the operating environment but has a maximum of bytes.UDP checksums protect message data from tampering. The checksum value represents an encoding of the datagram data calculated first by the sender and later by the receiver. Should an individual datagram be tampered with or get corrupted during transmission, the UDP protocol detects a checksum calculation mismatch. In UDP, checksumming is optional as opposed to TCP where checksums are mandatory.
159 UDP DatagramsUDP network traffic is organized in the form of datagrams. A datagram comprises one message unit. The first eight (8) bytes of a datagram contain header information and the remaining bytes contain message data.A UDP datagram header consists of four (4) fields of two bytes each:source port numberdestination port numberdatagram sizechecksum
160 DOMAIN NAME SERVER (DNS) DNS allows the use of 'friendly names': names that are easier to read and memorize for humans.It is able to do mappings between these Domain names and IP-addresses. For instance:=>=>Many applications use DNS for user convenience (e.g. your Web-Browser).DNS uses a (world-wide) distributed database based on hierarchically structured domains.DNS is specified in RFC 1034 and RFC 1035.
161 Dns Resource RecordThe resource record will be in this format Domain_name time_to_live class type value Domain_name - it tells the domain name time_to_live - the existance of record for 1day/hr/min Class – it is generally IN(internet information) Type – it denotes a Host/name server/mail server etc.. Value – it can be a number/domain name/Ascii string Eg: IN NS IN MXUse the same name for mail server and web serverTtl – how long the RR can be kept in the cache
162 DNS … root edu com mil org int net gov nl be uk ietf.org mit.edu nasa.govutwente.nlcs.utwente.nldomaindemeter.cs.utwente.nlhost
163 Web page Retrieval DNS server ISP server client Yahoo server Web serverserver
164 -contd..In the above figure, a user (client) of a particular network makes a request for a web page.Then for eg: user has given in the address bar of browser(internet explorer)in his client system.Then soon HTTP comes into picture, takes the request of user and pass it onto the local server, then from there the request will be passed onto the ISP(eg - BSNL) server and from there it will be passed onto the DNS server.Then DNS will search for that address, if it is found then that request will be passed onto the yahoo web server and the yahoo server will act on the request, process it, respond back with the requested web page in the same path.If address is not found in DNS then it will come back with empty response.
165 means or system for transmitting messages electronically (as between computers on a network)messages sent and received electronically through an e- mail system.These messages usually consist of individual pieces of text which you can send to another computer user even if the other user is not logged in (i.e. using the computer) at the time you send your message. The message can then be read at a later time. This procedure is analogous to sending and receiving a letter.When mail is received on a computer system, it is usually stored in an electronic mailbox for the recipient to read later. Electronic mailboxes are usually special files on a computer which can be accessed using various commands. Each user normally has their individual mailbox.
166 Servers include Sendmail, Postfix, Exim, Qmail User agent -A user agent is normally a program that accepts a variety of commands for composing, receiving, and replying to messages.Agent• a.k.a. “mail reader”.composing, editing, reading mail messages.e.g., Eudora, Outlook, elm,Netscape Messenger.outgoing, incoming messages stored on server.COMMON PROTOCOLSSending Mail:SMTP (Simple Mail Transport Protocol)Servers include Sendmail, Postfix, Exim, QmailReceiving MailIMAP (Internet Message Access Protocol)POP3 (Post Office Protocol v3)Servers Include Dovecot, Courier, Qmail
167 SMTP - If ever configuring a mail server, try to separate these two types of services Outgoing Mail ServerShould have some kind of authenticationQueue messages when receiving server is unavailableSends bounce message to sender after retrying deliveryIncoming Mail Server (or MX server)Receives incoming messages from the InternetDelivers message to a mailbox(Should never send a bounce)POP3 - Retrieves messages from a mail server.Typically, messages are downloaded to your mail client, and deleted from the server.Designed for use with dial-up connections when people were intermittently connected.Listens on Port 110 (with Secure POP generally on port 995).IMAP - Listens on port 143 (IMAP/SSL on port 993)Mail stays on the server. Mail Client caches information locallyExtremely useful for multiple users, multiple machines, Webmail, etcSearches are done on the server
168 WORLD WIDE WEB Components of world wide web HTTP HTML INTERNET BROWSER URL
170 HTTP HTTP – Hyper text transfer protocol It is a software which is used across web to take the Request of a client and pass it to the web server and come back with the Response with some set of rules.HTTP is a request/response standard as is typical in client-server computing.The client is an application (e.g. web browser, spider etc) on the computer used by an end-user.The server is an application running on the computer hosting the web site.The client which submits HTTP requests is also referred to as the user agent. The responding server— which stores or creates resources such as HTML files and images—may be called the origin server.
171 HTML HTML is a language for describing web pages. HTML stands for Hyper Text Markup LanguageHTML is not a programming language, it is a markup languageA markup language is a set of markup tagsHTML uses markup tags to describe web pages
172 INTERNETIt is a network of networks that consists of millions of private and public, academic, business, and government networks of local to global scope that are linked by a broad array of electronic and optical networking technologies.The Internet carries a vast array of information resources and services, most notably the inter- linked hypertext documents of the World Wide Web (WWW) and the infrastructure to support.It is a collection of interconnected documents and other resources, linked by hyperlinks and URLs.
173 BROWSERA browser is an application program that provides a way to look at and interact with all the information on the World Wide Web.A browser converts HTML source code(markup tags) to beautiful text, images, graphical motions etc.Technically, a Web browser is a client program that uses HTTP (Hypertext Transfer Protocol) to make requests of Web servers throughout the Internet on behalf of the browser user.The first Web browser with a graphical use interface was Mosaic, which appeared in Many of the user interface features in Mosaic went into Netscape Navigator. Microsoft followed with its Internet Explorer (IE).
174 URLA common way to get to a Web site is to enter the URL of its home page file in your Web browser's address line. However, any file within that Web site can also be specified with a URL.The URL contains the name of the protocol to be used to access the file resource, a domain name that identifies a specific computer on the Internet, and a pathname, a hierarchical description that specifies the location of a file in that computer.A URL is a type of URI (Uniform Resource Identifier, formerly called Universal Resource Identifier.)
175 WEB DOCUMENTSThe documents in the WWW can be grouped into different categories: static, dynamic. The category is based on the time the contents of the document are determined.Static DocumentsDynamic Documents
177 DYNAMIC DOCUMENTIn a dynamic web page, there will be a provision for I/O. i.e. When the web page is running, We will give some input to the web page, correspondingly there will be a change in the output of the web page.
Your consent to our cookies if you continue to use this website.