Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Laboratory of Computer Communication and Networking SRP Simulation Over Ethernet.

Similar presentations


Presentation on theme: "The Laboratory of Computer Communication and Networking SRP Simulation Over Ethernet."— Presentation transcript:

1 The Laboratory of Computer Communication and Networking SRP Simulation Over Ethernet

2 Project Team Submitted by: Yigal Bogin sibogin@t2 Technion No’omi Meridor snoomi@t2 Technion Lecturer Prof. Reuven Cohenrcohen@cs Technion Instructor: Sarel Altshuler saltshul@cisco.com Cisco Supervisor: Itai Dabran idabran@cs Technion

3 Project Goal Implementation of Spatial Reuse Protocol (SRP) over UDP. Implementation of Spatial Reuse Protocol (SRP) over UDP. Main missions: 1. Transmission of packets via Windows sockets. 2. Implementation of ring topology discovery as defined by the protocol. 3. Implementation of ring selection algorithm. 4. Sending and receiving data and control packets over wrapped and unwrapped rings, using a basic user interface.

4 Background The Spatial Reuse Protocol (SRP) was developed by Cisco for use with ring-based media. It derives its name from the spatial reuse properties of the packet handling procedure. The Spatial Reuse Protocol (SRP) was developed by Cisco for use with ring-based media. It derives its name from the spatial reuse properties of the packet handling procedure. Spatial Reuse is a concept used in rings to increase the overall bandwidth of the ring. This is possible because unicast traffic is only passed along ring spans between source and destination nodes rather than the whole ring as in earlier ring based protocols such as token ring. SRP uses a bidirectional dual counter-rotating ring topology. Both rings are utilized for transporting data and SRP control packets. SRP uses a bidirectional dual counter-rotating ring topology. Both rings are utilized for transporting data and SRP control packets.

5 Background (Cont.) Main aspects of SRP  Topology discovery mechanism Each node on the ring sends out periodically topology discovery packets over the ring. When the packet arrives back at the node, it updates the topology map according to the new information in the incoming packet. A more detailed description will be given later on.  SRP Fairness algorithm (SRP-fa) This algorithm ensures that each node on the ring has fair share of the ring bandwidth by controlling the rates at which packets are forwarded or sourced onto the ring by the node. SRP-fa is not covered by our implementation.

6 Background (Cont.)  Dynamic ring selection The source node selects the ring for sending a packet based on the hop count of the packet. In SRP This is done using ARP. In our Implementation the selection is based on a topology map each node possesses.  Packet prioritization packet priority influences the period of time a packet will wait until it is transmitted over the ring. This allows SRP to support real time applications, and control traffic.

7 Background (Cont.)  Intelligent Protection Switching (IPS) If an equipment or fiber facility failure is detected, traffic going towards and from the failure direction is wrapped (looped) back to go in the opposite direction on the other ring. The wrap around takes place on the nodes adjacent to the failure.

8 Simulation S 1 3 4 D 2 Node S transmits a packet to node D over the outer ring.

9 Simulation (Cont.) S 1 3 4 D 2 Failure is detected between node 1 and node 2.

10 Simulation (Cont.) S 1 3 4 D 2 Packet is wrapped back into the inner ring.

11 Example (Cont.) S 1 3 4 D 2 Packet arrives at destination for the first time, and is forwarded to the following node on the ring.

12 Simulation (Cont.) S 1 3 4 D 2 Packet arrives at destination on the outer ring, and is accepted by it.

13 Project Description Main modules and data structures Main modules and data structures SRPQueues Topology map Data Structures Transmit Receive Modules Node Side A Side B Transmit Receive

14 Project Description (Cont.) Modules Modules  Node 1. Reads packets from input file and directs them to appropriate transmit queue, using ring selection algorithm. 2. Creates topology packets every fixed period of time, and directs them to left side Transmit queue unless the node is wrapped inside out. In this case the packet is directed to right side Transmit queue. 3. Removes packets from Receive queue. If the packet removed is a data packet it prints some of the incoming packet fields. If the packet is a topology packet it executes the topology algorithm and acts according to its results.

15 Project Description (Cont.)  Side Every node has 2 sides. The left side receives packets from the outer ring and transmits packets to the inner ring, using Transmit and Receive modules. The right side receives from the inner ring and transmits to the outer ring.  Transmit Removes packets from the Transmit and Transit queues according to a fixed hierarchy, and sends them over the ring to the destination node, using UDP sockets.  Receive Receives packets from the ring using UDP sockets and handles them according to the Packet acceptance and stripping algorithm which will be described later on.

16 Project Description (Cont.) Data structures  LowReceive and HighReceive These two queues contain SRP packets generated by a These two queues contain SRP packets generated by a fellow node on the ring and destined for the host. fellow node on the ring and destined for the host. A fixed threshold of 3 (priority field) determines which A fixed threshold of 3 (priority field) determines which priorities belong to which queue. priorities belong to which queue.

17 Project Description (Cont.)  HighTransmitL/R and LowTransmitL/R These four queues contain SRP packets generated by the host and destined for the ring. The suffix of each queue stands for the side to which it belongs. After determining on which ring the packet should be transmitted it is directed to the appropriate queue. Packets destined to the outer ring are directed to the right side queues, and packets destined to the inner ring are directed to the left side queues. A fixed threshold of 3 determines which priorities belong to which queue. These four queues contain SRP packets generated by the host and destined for the ring. The suffix of each queue stands for the side to which it belongs. After determining on which ring the packet should be transmitted it is directed to the appropriate queue. Packets destined to the outer ring are directed to the right side queues, and packets destined to the inner ring are directed to the left side queues. A fixed threshold of 3 determines which priorities belong to which queue.

18 Project Description (Cont.)  HighTransitL/R and LowTransitL/R These four queues contain SRP packets generated by a fellow node on the ring and destined for one or several nodes located further ahead on the ring. Packets destined for the outer ring are buffered in the right side queues, and packets destined for the inner ring are buffered in the left side side queues. A fixed threshold of 3 determines which priorities belong to which queue.

19 Project Description (Cont.)  Topology map This Data structure holds a list of nodes in the ring and their ‘wrap’ status. In addition it contains information used for ring selection.

20 Algorithms Ring Selection This algorithm determines the shortest path to the destination node in terms of hop count. If the node is not wrapped, the algorithm chooses the ring that contains less nodes between the source and the destination. After choosing the ring, the packet is directed to the transmission queue of the suitable side. If the node is wrapped there is only one ring possible for transmitting the packet. The algorithm directs the packet to the unwrapped side.

21 Algorithms (Cont.) Topology discovery algorithm Topology discovery algorithm Topology discovery plays a key role in SRP ring selection and network management capabilities. Each node on the ring periodically sends out topology discovery packets on the inner ring or on the outer ring, if the node is wrapped inside out. Nodes receiving the topology discovery packet append their MAC binding which consists of the node's MAC address and info. indicating whether the node is wrapped or unwrapped. Once the packet is updated it is passed along to the next node on the ring. When the topology discovery packet follows a wrap, the packet is not updated until it comes out of the wrap. Topology discovery plays a key role in SRP ring selection and network management capabilities. Each node on the ring periodically sends out topology discovery packets on the inner ring or on the outer ring, if the node is wrapped inside out. Nodes receiving the topology discovery packet append their MAC binding which consists of the node's MAC address and info. indicating whether the node is wrapped or unwrapped. Once the packet is updated it is passed along to the next node on the ring. When the topology discovery packet follows a wrap, the packet is not updated until it comes out of the wrap. Eventually the topology discovery packet returns to the source, where it is received and stripped from the ring. Upon receiving two consecutive topology discovery packets that are identical, the node updates its topology map. Eventually the topology discovery packet returns to the source, where it is received and stripped from the ring. Upon receiving two consecutive topology discovery packets that are identical, the node updates its topology map.

22 Algorithms (Cont.) Packet acceptance and stripping Packet acceptance and stripping Upon receiving a packet, the Receive module tests the TTL field and discards the packet if it equals 1. Then, checks whether the packet is a data packet or a topology packet. If Data: 1. If the packet was sourced by the node and the ingress ring and egress ring are the same, strip the packet off the ring. 1. If the packet was sourced by the node and the ingress ring and egress ring are the same, strip the packet off the ring. 2. If the two following conditions are valid, direct the packet to the HighReceive queue or LowReceive queue, according to its priority. a. The packet is destined to the node, or the packet is a multicast. multicast. b. The ingress ring and egress ring are the same, or the node is wrapped is wrapped

23 Algorithms (Cont.) 3. If one of the three following conditions are valid direct the packet to the appropriate Transit queue. a. The packet isn’t destined to the node. b. The packet is a multicast. c. The packet is destined to the node, but the ingress ring and egress ring are not the same and egress ring are not the same If Topology: direct packet to the HighReceive queue, where it will be handled by the host.

24 Algorithms (Cont.) Transmission and forwarding Transmission and forwarding The Transmit module tests the Transmit queues and Transit queues and sends packets in an infinite loop. In order to choose the next packet to transmit, the Transmit module must choose between high and low priority transit packets and high and low priority transmit packets according to the following hierarchy: 1. High-priority transit packets 2. High-priority transmit packets from host 3. Low-priority transmit packet from host 4. Low-priority transit packets

25 User Interface Operating instructions: 1.Initialize Node. 2.Select Input file from the File menu. 3.Select Output file from the File menu. 4.Select Activate Node from the Actions menu. 5.After executing phases 1 to 4 for all the nodes in the ring, select Start Working from the Actions menu.

26 User Interface (Cont.) Actions Actions To see topology Node initialization Node wrapping

27 User Interface (Cont.) Initialization Initialization

28 User Interface (Cont.) Input File Description Input File Description CopiesDelayPriorityDestination Message  Copies – number of copies of the message that should be sent sent.  Delay – the delay after each message.  Priority – priority of the message  Destination – message destination (1000000000 for multicast packets)  Message – the message itself

29 User Interface (Cont.) For Example: For Example:

30 User Interface (Cont.) Topology Topology  To see topology press the T button and select in which file to save.  For example: not wrapped ring of 4 stations as seen from station 2.

31 User Interface (Cont.) Output Files: Output Files:


Download ppt "The Laboratory of Computer Communication and Networking SRP Simulation Over Ethernet."

Similar presentations


Ads by Google