ECE 544 Protocol Design Project 2016 Chengyao Wen Hua Deng Xiaoyu Duan.

Slides:



Advertisements
Similar presentations
Computer Networking A Top-Down Approach Chapter 4.7.
Advertisements

The subnet /28 has been selected to be further subnetted to support point-to-point serial links. What is the maximum number of serial links.
CPSC Network Layer4-1 IP addresses: how to get one? Q: How does a host get IP address? r hard-coded by system admin in a file m Windows: control-panel->network->configuration-
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 Introduction to Dynamic Routing Protocol Routing Protocols and Concepts – Chapter.
Network Layer Packet Forwarding IS250 Spring 2010
Routing So how does the network layer do its business?
Delivery, Forwarding, and Routing
MULTICASTING Network Security.
ROUTING PROTOCOLS Rizwan Rehman. Static routing  each router manually configured with a list of destinations and the next hop to reach those destinations.
© 2007 Cisco Systems, Inc. All rights reserved.ICND1 v1.0—4-1 LAN Connections Exploring the Functions of Routing.
ECE 544 Project3 Kush Patel Siddharth Paradkar Ke Dong.
Routing Algorithms (Ch5 of Computer Network by A. Tanenbaum)
Introduction to Routing and Routing Protocols By Ashar Anwar.
1 Routing Protocols. 2 Distributed Routing Protocols Rtrs exchange control info Use it to calculate forwarding table Two basic types –distance vector.
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
Introduction to Dynamic Routing Protocol
Network Layer introduction 4.2 virtual circuit and datagram networks 4.3 what’s inside a router 4.4 IP: Internet Protocol  datagram format  IPv4.
CS 5565 Network Architecture and Protocols Godmar Back Lecture 22.
IGRP ► IGRP is a distance vector routing protocol developed by Cisco. ► IGRP sends routing updates at 90 second intervals. ► These updates advertise all.
1 IP : Internet Protocol Computer Network System Sirak Kaewjamnong.
ECE 544 Project3 Amith V.S Pavan Kulkarni Suneet Dixit.
Microsoft Windows Server 2003 TCP/IP Protocols and Services Technical Reference Slide: 1 Lesson 7 Internet Protocol (IP) Routing.
1 Internet Routing. 2 Terminology Forwarding –Refers to datagram transfer –Performed by host or router –Uses routing table Routing –Refers to propagation.
AODV: Introduction Reference: C. E. Perkins, E. M. Royer, and S. R. Das, “Ad hoc On-Demand Distance Vector (AODV) Routing,” Internet Draft, draft-ietf-manet-aodv-08.txt,
Network Layer4-1 Datagram networks r no call setup at network layer r routers: no state about end-to-end connections m no network-level concept of “connection”
Networking and internetworking devices. Repeater.
Routing Fundamentals and Subnets Introduction to IT and Communications Technology CE
Stainov - DataComMET CS TC5353 THE NETWORK LAYER 5.2 ROUTING ALGORITHMS - adaptive Distance Vector Routing (Bellman-Ford, Ford-Fulkenson). It was used.
ECE 544 Project3 Group 9 Brien Range Sidhika Varshney Sanhitha Rao Puskuru.
Multicasting  A message can be unicast, multicast, or broadcast. Let us clarify these terms as they relate to the Internet.
Routing Algorithms and IP Addressing Routing Algorithms must be ▪ Correctness ▪ Simplicity ▪ Robustness ▪ Stability ▪ Fairness ▪ Optimality.
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 19 Omar Meqdadi Department of Computer Science and Software Engineering University.
Network Layer by peterl. forwarding table routing protocols path selection RIP, OSPF, BGP IP protocol addressing conventions datagram format packet handling.
RIP Routing Protocol. 2 Routing Recall: There are two parts to routing IP packets: 1. How to pass a packet from an input interface to the output interface.
ECE 544 Protocol Design Project 2016 Nirali Shah Thara Philipson Nithin Raju Chandy.
ECE 544 Protocol Design Project 2016 Michael Sherman Murtadha Aldeer Leonard T. Park.
Graciela Perera Department of Computer Science and Information Systems Slide 1 of 18 INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723 Graciela.
ECE 544 Protocol Design Project 2016 Kiran Jatty Lasya Nandamuri Varun Vinnakota.
Lec4: Introduction to Dynamic Routing Protocol
Introduction to Dynamic Routing Protocol
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 CPSC 335 Data Communication.
ECE 544 Protocol Design Project 2016
IGRP IGRP is a distance vector routing protocol developed by Cisco.
COMP 3270 Computer Networks
Link-State Routing Protocols
THE NETWORK LAYER.
CS 457 – Lecture 12 Routing Spring 2012.
Introduction to Dynamic Routing Protocol
ECE 544 Protocol Design Project 2016
ECE 544 Project3 Team member.
ECE 544 Protocol Design Project 2016
Introduction to Dynamic Routing Protocol
ECE 544 Protocol Design Project 2016
ECE 544 Protocol Design Project 2016
Anup Mathur Anusha Sheelavant Prakhar Srivastava
ECE 544 Protocol Design Project 2016
ECE 544 Software Project 3: Description and Timeline
ECE 544 Software Project 3: Description and Timeline
ECE 544 Project3 Team member: BIAO LI, BO QU, XIAO ZHANG 1 1.
ECE 544 Protocol Design Project: Description and Timeline
Aayush Patidar Ashwin Ramakrishnan Manoj Juneja
ECE 544 Software Project 3: Description and Timeline
ECE 544 Software Project 3: Description and Timeline
Viet Nguyen Jianqing Liu Yaqin Tang
ECE 544 Project3 Team member.
CCE1030 Computer Networking
Computer network technology
ECE 544 Project3 Dheeraj Medikonda Ravi Chandra Godavarthi 1.
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

ECE 544 Protocol Design Project 2016 Chengyao Wen Hua Deng Xiaoyu Duan

Network Architecture & Topology Service Objective k-out-of-n multicast (n = 3, k <= n) Multicast message to ‘best k’ destinations Routing protocol chooses the ‘best’ multicast path

Network Assumptions Assumptions Unreliable network with packet loss prob. 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) Network scale 50 – 100 routers and <= 256 hosts

Protocol Concept Overall Concept Multicast message to ‘best k out of 3’ destinations Static IP address allocation. Control Packet ACK Hello Hello_ACK Routing_Update (RIP) Data Packet Distance Vector Go-back-N ARQ

Syntax and Semantics Control Packets ACK Type (1 Byte): Packet Type Seq # (1 Byte): Data Packet Sequence Number Src (4 Bytes): Source IP Address Dst (4 Bytes): Destination IP Address

Syntax and Sematics Control Packet Hello Type (1 Byte): Packet Type Src (4 Bytes): Source IP Address Hello_ACK Type (1 Byte): Packet Type Src (4 Bytes): Source IP Address Dst (4 Bytes): Destination IP Address

Syntax and Semantics Control Packet Routing_Update Type (1 Byte): Packet Type Len (1 Byte): Packet Length IP Addr 1 (4 Bytes): Destination IP Address 1 Subnet 1 (4 Bytes): Subnet of Dst IP Address 1 Next Hop 1 (4 Bytes): Next Hop Address of Route to Addr 1 Hop Cnt 1 (1 Bytes): Total Number of Hop Counts to Addr 1

Syntax and Semantics Data Packet Data Type (1 Byte): Packet Type Len (1 Byte): Packet Length TTL (1 Byte): Time to Live (Hops #) K (1 Byte): Number of Destinations in the Multicast Flag (3 Bits): Indicate the validation of Dst1 to Dst3 Src (4 Bytes): Source IP Address Dst 1 to 3 (12 Bytes): Destination IP Address 1 to 3 Data: Data Payload

Routing table DestinationCostNext Hop D12R1 D23R2 D33R2 Routing table of a router

Routing Algorithm For each router: Let # be the total number of valid dst addrs of pkt if (K=1) // the pkt is unicast if (K = #) Directly forward the pkt to ‘next hop’ of the valid dst addr; else Choose the dst with smallest cost, invalidate the rest dst and forward to ‘next hop’ of the chosen dst; else if (K = #) if (all “next hop” for the rest valid dst are the same) The router directly forwards the pkt to the next hop; else The router duplicates pkt, invalidates specific dst addr and changes K value to # and forwards to corresponding ‘next hop’;

Routing Algorithm else if (K = 2 and # = 3) if (all ‘next hop’ are same for 3 dst) Directly forward the pkt to ‘next hop’; else Router operate ‘best k-out-of N’ routing Split 3 dst into groups with 2 dst each Compute total cost for each group if (‘next hop’ is same for dst in a group) totCost = Cost1 + Cost2 – 1 else totCost = Cost1 + Cost2 Choose the group with smallest totCost as the ‘best k’ dst and router invalidate the not chosen dst and repeat the algorithm. (If multiple groups with same totCost, choose the group with the same ‘next hop’)

Example Networks: Network 1 According to the algorithm 1. R1 operates “ best K out of N” routing; 2. totCost(D1, D2)=totCost(D1,D3)=totCost(D2,D3)=2 ; 3. R1 chooses D1 and D2 (with the smallest node ID) and invalidates D2, D3 addr for pkt sending to R2 and invalidate D1, D3 addr for pkt sending to R3. 4. In R2, R3, K= # = 1, routers just directly forward the pkt to “next hop”. copy

Example Networks: Network 2 There are two situations: 1.The routing table of R1: 2.The routing table of R1 DestinationCostNext hop D12R2 DestinationCostNext hop D12R3

Example Networks: Network 2 In situation 1 According to the algorithm copy K out of N 1. R1 operates “best K out of N” routing; 2. totCost(D1,D2) = totCost(D1,D3)=5 and totCost(D2,D3)=6-1=5 with the same “next hop” R3. So D2 and D3 are chosen and D1 addr is invalidated. 3. In R3 and R5, K=#=2, both routers directly forward the pkt to “next hop”;

Example Networks: Network 2 In situation 2 According to the algorithm 1.In R1, K=2 and #=3 and all 3 dst have same ‘next hop’, R1 directly forwards the pkt to R3; 2. R3 operates “best K out of N” routing; 3. totCost(D1,D2)=totCost(D1,D3) = 3 and totCost(D2,D3) = 4- 1 = 3 with same “next hop”. So D2 and D3 are chosen and D1 addr is invalidated. 4.In R5, K=#=2, R5 directly forwards the pkt to R6. copy K out of N

Summary Key features Routers periodically flood hello message Routers use DV method to build routing table Our algorithm values shared links in ‘best k’ choosing The method is ‘greedy’ and gets local optimal Performance Our algorithm chooses the overall optimal route and destinations in the given examples. Implementation complexity Routing table and pkt information are used to choose ‘best k’ destinations Only simple addition and comparison are required for routers