StudentShare
Contact Us
Sign In / Sign Up for FREE
Search
Go to advanced search...
Free

Designing a Network Protocol - Coursework Example

Cite this document
Summary
The author of this paper "Designing a Network Protocol" discusses a traffic light unit (TLU) that controls the traffic flowing into a junction from approaching roads, including the design of a network protocol that controls the functionality of the TLU, the protocol requirements, and phases…
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER95.4% of users find it useful
Designing a Network Protocol
Read Text Preview

Extract of sample "Designing a Network Protocol"

Network Protocol Design Network Protocol Design Inserts His/her Inserts Grade Inserts 19, 13, Table of Contents Table of Contents 1 1.2 Phases of the Protocol 4 1.3 Description of Operation 5 1.4 Possible Failure Modes 6 Designing a Network Protocol A traffic light unit (TLU) controls the traffic flowing into a junction from approaching roads. The aim of this assignment is to design a network protocol that controls the functionality of the TLU. 1. Requirements The manufacturer of road equipment wishes to develop a control protocol to enable multiple portable light units (TLU) to automatically manage a road junction with an arbitrary number of roads. The manufacturer requires to use protocol specifications of finite state machine methodology to develop suitable controls for each TLU. Each TLU must be capable of interacting with an arbitrary number of other TLUs over a local wireless subnet. Each TLU is a free standing unit with their own power fitted with a computer, wireless network interface and light controller. It has its own switch on the button, that powers it on. It has channel ID that selects the wireless channel number for the junction’s subnet. All TLUs on the same junction should be switched to the same channel number. It also has a button to specify the number of TLUs operating in the junction. It also has a pass duration button to select a suitable time interval (the pass duration) which traffic travelling in this direction should be allowed. The TLU also has a unique ID number that identifies it to the network. These buttons are set by the installer of the each TLU. Each TLU in the junction has these buttons and the installer without any pattern must switch on the TLUs. Once switched on, the TLU remains with its lights off until instructed by the protocol to do otherwise. 1.1 Protocol Requirements The protocol identifies each TLU locally by an integer variable TLUid. The protocol instructs any TLU to execute the GO sequence MyLights.Go() in which the lights goes through the usual starting sequence and allow traffic flow for the TLU’s passDuration in seconds. It also executes the STOP sequence MyLights.stop() or switch off its lights completely myLights.off(). The protocol must enable the TLUs in the network to collaborate so that they can automatically select a MASTER TLU amongst themselves which has a series of responsibilities. These responsibilities include maintaining a list of TLU IDs operating on the junction. Instructing each TLU in turn to allow traffic flow, and managing situations where any TLU is no longer available on the subnet. The protocol once it selects, the MASTER TLU instructs all TLUS to go to the STOP configuration for 30 seconds. It then instructs each TLU (including itself) to allow traffic to pass. When a TLU has crashed down it is expected to recover within a minute, at this time all TLUs should be under stop configuration. If the loss of a TLU is more than a minute, the MASTER TLU must detect this and instructs all the other TLUs to switch off their lights. The protocol should allow the TLUs to automatically select another MASTER TLU anytime this TLU crash. If the installer replaces a broken TLU, the protocol should allow automatic resuming of the normal operation as soon as possible. This protocol should allow all TLUs in the same junction to communicate and coordinate effectively. 1.2 Phases of the Protocol Phase 1 Selecting a master control TLU to automatically coordinate the other TLUs Phase 2 The MASTER TLU sends coordinating instructions to allow traffic to pass according to the specified pass duration. Phase 3 MASTER TLU manages the other TLUs, this includes managing crashes and recovery of TLUs. Phase 4 Automatic selection of a MASTER TLU when the MASTER TLU crashes. Phase 5 Go to unmanaged state if one of the TLU crashed completely. 1.3 Description of Operation When the TLU is powered up, by the installer, it connects into the existing wireless subnet and waits for the other TLUs to join the network. The channel number, that all the TLUs in the wireless subnet must connect to, and the pass duration is set by a couple of knobs on the TLU’s control panel. When the all the TLUs in a junction are switched on they automatically select a master TLU to coordinate and control the other TLUs. Once this has been done, the master TLU commands all to go off and in turn commands each TLU to allow traffic to pass according the their specified duration. Since each TLU is expected to crash, the master TLU manages the situation when a TLU goes out of the network. If a TLU goes off the network for more than a minute the master TLU orders the other TLUs to go off. In case of a crash of the master TLU, the other TLUs detects the problem and automatically selects another master TLU. If the newly selected master recognizes that the TLU cannot be recovered it commands all the TLUs to go to an unmanaged state where all the lights go off allowing the drivers to proceed with caution without forcing their way dangerously. 1.4 Possible Failure Modes Since this is a system, it has expected failures and how the system should respond to a failure mode when it occurs. During operations, they are two possible failure modes, namely Slave TLU failure mode and Master TLU failure mode. Each TLU is expected to crash once in a while, but not more than 30 seconds. If a TLU goes off the network for more than a minute, the MASTER TLU notes this failure mode and commands the other TLU to go off. The other failure mode is a MASTER TLU failure mode. This occurs between the normal crashes of a TLU, the system quickly recovers from this by selecting automatically another Master TLU. This means that the standards of each TLU are the same and each has the capacity of being a master or a slave TLU. 2. Design The design uses the methods of Finite State Machine to come up with the correct protocol with ability to communicate effectively passing messages to all relevant transitions. Since it is a wireless network and each TLU is independent of each other, the protocol must have the ability to have proper communication across the network. The protocol is designed sequentially with crucial steps that must take place for a process to be called complete. The design is based on that of a master and client. The TLUs are designed each to accommodate the protocol that will enable them to effectively run the network. Once a TLU is READY it broadcast a claim to be the master TLU, the first to broadcast the claim receives the master controls. Also the entry steps for each TLU is to broadcast entry and clean. The established master TLU broadcast list of the already enrolled TLUs in the network. The CLAIM state is available until all TLUs are enrolled in the Master list and it also remains available for cases when MASTER TLU crashes. This is to allow it to receive claim from the existing active Junior TLU. It will acknowledge the first TLU to send the claim. The READY state is the state of each TLU that enrolls in the Network. The READY state has broadcast claim and setmaster timeout as the entry actions. The CLOSE state is available for all the TLU. IT receives the command terminate from either the MASTER TLU or the Client TLU. If it receives a command terminate from a client, it sends a report to the master TLU that must manage the absence of that TLU. If it receives a command terminate from the MASTER, it broadcasts master out message to the rest of the TLUs. This enables the Client TLUs to send a claim to the CLAIM state. If a TLU completely crashes the system goes into the UNMANAGED state. In in this state the installer must place and restart the TLUs to begin operation of the system. 2.1 The Basic Finite State Machine Figure 2.1 The Finite State Machine 2.1.1 The States The available states are READY state, CLAIM state, MASTER state, and CLOSE state. The ready state is broadcasted by every TLU once it switched on. It has the channel ID, number of junction TLUs, and pass duration buttons sets. The CLAIM state allows the automatic selection of a MASTER TLU. The first TLU to broadcast the claim is automatically selected as the master TLU. The other TLU becomes the Client TLUs. The MASTER state is the controlling state of the system. It can be claimed by any TLU in the system. The CLOSE state is the state that notifies the system of any losses. When a client TLU or a master TLU crashes, it must issue a terminate command which is received by the CLOSE state. If a TLU has crashed the master TLU sends a signal to the UNMANAGED state. The system goes to the unmanaged state where all the lights goes off and the installer must restart them and replace the broken TLUs for normal operation. Figure 2.2 The States 2.1.2 The Events The input Events are switching on the TLUs and setting up the channel Id, junctions number of TLUs and the pass duration. The time events are the master absent timer, pass duration timer, periodic report timer, and time out completion time. The Message events are broadcast events such as broadcast entry, broadcast claim, broadcast list, and broadcast exit. Others include receive message events such as receive LIST, receive CLAIM, receive ENTRY, and receive EXIT. 2.1.3 The Actions This system has a series of actions such as acknowledging claim, acknowledge entry, message send, message receive, time out, new entry. All these are some of the actions in this system. The READY state has broadcast ENTRY and set MasterAbsent Timer actions. The CLAIM state has broadcast CLAIM, set PeriodicReport Timer, and Set completion timer actions. The MASTER state has broadcast LIST timer and set periodicReport Timer actions. The CLOSE state has broadcast exit action. 2.2 Modifications to deal with Failure Modes The modifications that the system has to deal with the failure modes such as message loss, node loss, and master TLU loss are three. The first is to deal with message loss is to demand an acknowledgement of receipt of the message by the destination within 10 seconds after sending. If the acknowledgement is not received, the message is resent again, if no acknowledgement the send time, the master queries to find out if the TLU is on the network or not. The second failure mode is that of the node failure, if a node completely fails, the master orders the rest to go off, then issues an alarm, (soundAlarm()), to alert the installer to correct the problem. For Master Node loss, the system automatically selects another master, then alerts the installer to replace or repair the broken TLU. The Unmanaged state allows the TLUs to switch off all the lights and allow the traffic to flow cautiously. 2.3 The State Transition Diagram The State Transition Diagram is like the finite state machine, but with more elaborations. State Input Actions Event Next State Exit actions Broadcast entry, Ready Broadcast claim, Automatic master selection Claim Broadcast List, Receive Entry Master Close Set MasterAbsent Timer, Receive entry list from the MASTER Ready Broadcast Exit Receive command terminate Close wait Lights off Unmanaged 3. Implementation The implementation of the traffic unit control system is a combination of socket programming, messages, finite state machines, session and presentation layer building, and multi-party session. The Java language primitives are used in the implementation of this system. 3.1 Pseudo-Code The pseudocode for this system is as follows. The Installer puts up the appropriate number of TLUs in the correct location in a junction, then powers each TLU on, setting up the channel Id, the number of TLUs in the junction, and the pass duration to allow the traffic to flow. Once all TLUs are powered up they are ready to automatically select a MASTER TLU that manages all the TLUs in the junction. The first one to send the claim is the master TLU The master TLU sends commands to each TLU in turn to allow traffic to pass according to the specified pass duration. Each TLU has a unique ID number. This number is used to communicate with the TLU and identify it in the network. In case of a crash that goes beyond one minute, the Master TLU manages the situation and commands all to go off, and alerts the installer to repair or replace the broken TLU. The MASTER TLU if it breaks down, the system automatically selects another TLU to replace it, which commands all TLU to go off until the broken TLU is repaired or replaced. This is the unmanaged state where all the TLUs must go off, by putting off all the light. The cycle continues with manageable crashes of 30 seconds. 3.1.1 Primitives used to detect events The primitives are as follows: Ready.listen() Claim.recv() Claim.accept() Master.socket() Lights off 3.1.2 Primitives used to generate actions The primitives used to generate actions are commandTerminate.send() master.sendTo(0 master.send() claim.send() master.bind() master.socket() closesocket() 3.1.3 Pseudo-code This is the expected end pseudocode of the entire Traffic Light Unit control System. The pseudocode makes assumptions that all units have systematically been placed at appropriate locations and all are powered up. The master TLU has already been selected and the system is about to begin to allow traffic to pass. The MASTER TLU broadcast Entry list through master.sendToAll() command. Each client TLU, confirms its in the LIST and confirm with a Entry.recv() primitive. Once all have confirmed, the master TLU sends a allOff.sendToAll() primitive, Each TLU goes off for 30 seconds The master TLU then sequentially orders each TLU to allow traffic to pass according to the specifies duration. The MASTER TLU sends periodic checks to all TLU to ensure that they are in the network. When a TLU crashes it send an exit command via exit.sendToMaster() to allow the master to remove the unit from the list. The master raises all Off. sendToAll () primitive alarm to the installer. Select a new master if the MASTER TLU crashes. Continue the cycle until installer removes the System from the junction. If a TLU completely crashes go to the unmanaged state. Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(Designing a Network Protocol Coursework Example | Topics and Well Written Essays - 2250 words, n.d.)
Designing a Network Protocol Coursework Example | Topics and Well Written Essays - 2250 words. https://studentshare.org/information-technology/1813653-designing-an-network-protocol
(Designing a Network Protocol Coursework Example | Topics and Well Written Essays - 2250 Words)
Designing a Network Protocol Coursework Example | Topics and Well Written Essays - 2250 Words. https://studentshare.org/information-technology/1813653-designing-an-network-protocol.
“Designing a Network Protocol Coursework Example | Topics and Well Written Essays - 2250 Words”. https://studentshare.org/information-technology/1813653-designing-an-network-protocol.
  • Cited: 0 times

CHECK THESE SAMPLES OF Designing a Network Protocol

Open System Interconnection (OSI)

Communications are implemented through protocols which are a formal set of rules and conventions that govern how computers exchange information over a network medium.... A protocol implements the functions of one or more of the OSI layers.... 1) The Open System Interconnection (OSI) reference model was developed by the International Organization for Standardization (ISO) in 1984 as a conceptual model composed of seven layers (or stacks), each specifying particular network functions....
5 Pages (1250 words) Essay

Introductory Computer Usage 1

Reuters reported in 2005 that at a recent conference in Las Vegas, wireless network enthusiasts, had two hours to find 1 000 wireless networks in one of many contests that test their prowess.... Hackers ogled high-powered antennas that can pick up signals from over a mile away,… Hacking the Defcon conferences own wireless network proved popular as well – organisers said they fended off 1 200 attempts to compromise network security (REUTERS, 2005)....
4 Pages (1000 words) Essay

Client/Server Computing

S Co ordinationWeb services coordination is basically a service architecture that provides a pair of modular protocol building blocks that can be used to construct protocols relevant to specific applications.... Moreover, this service is developed by the Java Community Process called as JSR 914 (Java… MOM injects the construction of distributed systems by transferring messages via applications within the network.... MOM injects the construction of distributed systems by transferring messages via applications within the network....
2 Pages (500 words) Assignment

Routing and Switching Selection Criteria

Link state routing on… The examples of distance vector routing protocol are IGRP and RIP whereas that of Link State Routing protocol are IS-IS and OSPF. There are several factors that limit the working Routing and Switching Selection Criteria Distance vector and link are two forms of routing protocol.... The examples of distance vector routing protocol are IGRP and RIP whereas that of Link State Routing protocol are IS-IS and OSPF....
1 Pages (250 words) Essay

Comparing Ipv4 and Ipv6

Machado, Stanton, & Salmito (2013) stated that statistics reveal that there are close to 4 billion A Comparison between Ipv4 and Ipv6 A Comparison between Ipv4 and Ipv6 Communication via the internet protocol has been efficient forrelaying datagrams across a network.... IPv4 can thus be treated as an upgrade of IPV4, to improve the IP protocol system.... acket header-generally, packet headers are always affixed at the start of Internet protocol addresses....
2 Pages (500 words) Essay

Network and Protocol Processes

The main focus of this paper is to analyze network and protocol processes that occur in the network when you access x-stream from a remote location.... It also covers a pseudo-header; and includes destination and source addresses, the segment length and the protocol.... nbsp;My laptop (TCP Client) requests the Internet protocol to deliver an IP datagram with connection request to destination 212.... The interaction between my laptop and the server at X-Stream takes client-server architecture through TCP/IP protocols suite… To make an HTTP request to X-Stream, I open the browser in my laptop which is connected to the internet through a wireless network from an internet service provider....
5 Pages (1250 words) Essay

Private and Public Addresses in IP Addressing Design

Both… An IP address is termed as private if its IP number is in the range of IP addresses which are reserved for private networks like LAN - local area Private and public addresses in IP addressing design IP (Internet protocol) addresses are majorly ified into two, ly private and public addresses.... An IP address is termed as private if its IP number is in the range of IP addresses which are reserved for private networks like LAN - local area network....
1 Pages (250 words) Essay

WAN Technologies

The latest version of Novell allows the use of protocol by the administrator.... he dominant communication protocolsTypes of protocol are distinguished by their capacity to convey data across different distances (Muller 2003).... Ethernet is the most common LAN protocol mostly used in offices and homes.... Internet protocol on the other hand is the most common WAN protocol used universally.... The server has self healing abilities to fix corrupted files as well as advanced network security with enhanced processing speed. While WAN needs a router and a modem to connect to the… This makes it easier to expand LAN than WAN (Muller 2003). Since LAN uses Ethernet cables, network adapters and hubs to connect, it cannot be used in a wide Computer science and information technology Computer science and information technology Novell Windows Mac UNIX Linux General Novell introduced powerful concepts like hierarchical directory structure....
2 Pages (500 words) Essay
sponsored ads
We use cookies to create the best experience for you. Keep on browsing if you are OK with that, or find out how to manage cookies.
Contact Us