1 / 17

ECE 544 Protocol Design Project 2016

ECE 544 Protocol Design Project 2016. Kiran Jatty Lasya Nandamuri Varun Vinnakota. Network Architecture & Topology Assumptions. Service Objective: To design a protocol that efficiently multicasts the ‘packet datagrams’ to k-out-of-n nodes Assumptions

miser
Download Presentation

ECE 544 Protocol Design Project 2016

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ECE 544 Protocol Design Project 2016 Kiran Jatty Lasya Nandamuri Varun Vinnakota

  2. Network Architecture & Topology Assumptions • Service Objective: To design a protocol that efficiently multicasts the ‘packet datagrams’ to k-out-of-n nodes • Assumptions • Unreliable network with packet loss probability per link of p • Each end node is attached to only one router • All links have same characteristics (i.e. hop cost 1 and same MTU 1500 bytes) • Maximum number of nodes (i.e. 50) • Value of k<=3 • Local router knows the IP addresses of nodes connected to it • Routers know two unique multicast addresses used for k=2 & 3

  3. ADDRESSING • Each node has its own unique IP address IPv4 format • For example 235.100.2.10 – (k=3) and 235.100.2.9 –(k=2) • The multicast uses two unique IPv4 addresses (for k=2 & 3) given from class D of IPv4

  4. Protocol Concept • Based on the Multicast address, the source node sends the packet to (k<=3) optimum Destination nodes • Optimum destination nodes are decided by the local router to which the source is connected • Packet Structure: IPv4 (Dest addr = Multicast addr) • Control Plane: OSPF advertisements to find next hop, Unicast join messages to corresponding dest nodes from each local router, Periodic Hello messages to makes sure routers are alive • Data Plane: Multicast forwarding table ateach router which has the information about incoming interface, multicast address and outgoing interface to forward the packets • Key algorithms used: • OSPF (for routing) • Dynamic algorithm to find optimum destination nodes to multicast

  5. Syntax – Packet Formats • Control Packets & formats • We use three different control packets in this protocol • The first control packet is the OSPF packet which is used to determine the optimal path to the destination. • The format of the OSPF packet is shown below: LS Age Options T ype=1 Link state ID Advertising router LS sequence number LS checksum Length 0 Flags 0 Number of links Link ID Link data Link type Num_TOS Metric Optional TOS information More links

  6. Syntax – Packet Formats • Control Packets & formats: • The second packet is sent by the source to let the routers update the forwarding table. • This control packet can be as the below figure • When this packet arrives at a router, it creates the multicast forwarding table and copies the multicast address, and also the corresponding input and output interfaces this packet is forwarded to reach the destination 0 4 36 68 100 132 140

  7. Syntax – Packet Formats • Control Packets & formats: • The third packet used in this protocol is IPV4 using which we transfer the data packet • The structure of IPV4 is as shown below:

  8. Semantics • The fields we used in our control packets are: • Length: The length field of the data packet specifies its total length • Source Address: The source address is of 32 bits and specifies the address of the source node • Multicast Address: It is of class D address and is of 32 bits that defines the value of k(2 or 3) • Destination Address: The destination address is of 32 bits and specifies the address of the destination node • Options: The options field is used to append any extra data in future • TTL: Time To Live (TTL) is defined to avoid packet travelling indefinitely

  9. Routing Algorithm • We can use Link State (LS) Routing protocol to find the next hop to reach all the available nodes with a slight modification • If the destination can be reached in 2 hops(least hop count), instead of taking the one with low address, both the routers addresses are stored • The Routing table for each router can be in the form as below: • It starts with reliable flooding making sure that each and every node in the network participates in it and gets a link state information containing the id, list of directly connected nodes, sequence number and TTL • The possible next hops (Ni) stores all the possible hops which cost the same to reach a destination to decide an optimal path • It decides its next hop once it has information of all its destinations

  10. Data Plane Forwarding • The routing table at any router may be in the following format: • Whenever a packet comes from specific interface with a particular multicast address reaches a router, it checks its forwarding table to determine the interface it should send the packet to forwards it • If the packet that arrived at specific interface with a particular multicast address has two output interfaces the router copies the packet and sends to both the interfaces

  11. Example of forwarding near a router: At R1: At R2:

  12. R2 R5 R3 R1 R6 R4 R7 235.100.2.10 Control Plane to find Destination Nodes: • Local router R1 finds the 3 destination addresses based on the least hop count and sends three unicast join messages to D1, D2, D3 Data Plane Forwarding: • When S sends a multicast message to the local router R1, the router compares the multicast address in multicast forwarding table and forwards it to the specific interface. • Similarly, routers R2, R3, R4, R5, R6 and R7 also maintain their own forwarding table and forwards the packets accordingly once they receive a packet by comparing the multicast address.

  13. PERFORMANCE: • Considering each link is has BW 10MBps and distance between links is 500 m • Throughput: throughput = total amount of data transferred/total time = 7.37MBps • Goodput: Goodput = Actual data transferred/total time taken = 7.27 MBps • Delay for single link: Delay = propagation delay + transmission delay = 500/2*10^8 +1500/10*10^6 = 152.5*10^-6 sec

  14. Example Networks: R4 Network 2 R3 R1 For multicast address (k=3) R2 R5 R6 • Source S sends the IP packet with Source address and Multicast address as its destination address to Router R1 (Local Router). • R1 checks the multicast routing table and forwards the packet to specified interface • Every other router know the interface to forward the packet that comes from particular interface with a particular multicast address (equivalent to a tree)

  15. PERFORMANCE: • Considering each link BW is 10MBps and distance between links is 500m • Throughput: throughput = total amount of data transferred/total time = 5.9MBps • Goodput: Goodput = Actual data transferred/total time taken = 5.82 MBps • Delay for single link: Delay = propagation delay + transmission delay = 500/2*10^8 +1500/10*10^6 = 152.5*10^-6 sec

  16. Summary • Key protocol design features (recap) • OSPF (to find least hops to destination) • Protocol to find the optimum destination nodes for a given multicast address(k=2 &3) • Forwarding unicast join messages by local router to destination nodes to create multicast forwarding tables at each router (similar to connection oriented) • The packet is directly sent to respective interfaces based on the multicast address • Implementation complexity • Each router need to maintain multicast forwarding table • Need to program an algorithm to find optimum destination nodes

  17. THANK YOU

More Related