ECE 544 Protocol Design Project 2016 Wuyang Zhang

  • Slides: 17
Download presentation
ECE 544 Protocol Design Project 2016 Wuyang Zhang Yu Sun Shuo Fan

ECE 544 Protocol Design Project 2016 Wuyang Zhang Yu Sun Shuo Fan

Network Architecture & Topology Assumptions ● Service Objective: k-out-of-n “packet datagram” multicast

Network Architecture & Topology Assumptions ● Service Objective: k-out-of-n “packet datagram” multicast

Network Architecture & Topology Assumptions ● ● ● ● ● Unreliable network with packet

Network Architecture & Topology 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) Small maximum number of nodes (i. e. 50) …others – Network is stable and without mobile devices. Network address is static. No transmission failure.

Protocol Concept ● Overall concept of your proposed protocol ● Multicast message to “best

Protocol Concept ● Overall concept of your proposed protocol ● Multicast message to “best k (=<n)” destinations with the minimal total hop count ● Summary of protocol design (packet structure, control plane for protocol, data plane forwarding, key algorithms for mcast) ●ARQ Scheme ● After considering about the performance and implementaion, we finally choose Go back N ARQ

Syntax – Packet Formats ● Control Packets & formats ● Control messages ● ●

Syntax – Packet Formats ● Control Packets & formats ● Control messages ● ● Hello message (send link probes to neighbors) ACK message (response to neighbors) routing topology UPDATE Data packet format and headers ● ● ● SRC ADDR multicast DEST ADDR 1, …. . . multicast DEST ADDR k Number of candidate destination address Number of target receivers ( the value of K) Length of payload

Semantics ● Hello & ACK Message 0 Control Type ● Control 16 8 Device

Semantics ● Hello & ACK Message 0 Control Type ● Control 16 8 Device Type SRC ADDR Type: HELLO Type = 1 ACK Type = 2 UPDATE Type = 3 24 DEST ADDR 31

Semantics ● Update Message 0 Update message: Src Addr already knew N paths and

Semantics ● Update Message 0 Update message: Src Addr already knew N paths and want to tell these topology to its neighbor(Dest Addr) Path 1 = x: Src Addr knows one path, which consists of x nodes, and Src Addr knows each Addr during every hop count. 8 16 24 31 Control Type Update Sequence Src Addr Dest Addr Path 1 = x Addr 1 Addr 2 Addr 3 Addr 4 … Addr x Type x Path N = m Addr 1 Addr 2 Addr 3 Addr 4 . . . Addr m Type m Path 2 = y. . .

Semantics ● Data Packet Format 0 8 16 24 31 Control Type Src Addr

Semantics ● Data Packet Format 0 8 16 24 31 Control Type Src Addr NCDA NTR Dest Addr 1 Dest Addr 2 Dest Addr N Length PAYLOAD NCDA: Number of Candidate Destination Address (initially = N) NTR: Number of Target Receivers = K

Example Networks Network Topology R 2 R 1 R 4 R 3 R 5

Example Networks Network Topology R 2 R 1 R 4 R 3 R 5 R 6 How to build up the routing table, forwarding table?

Routing Table R 1 R 2 R 3 R 4 R 5 R 6

Routing Table R 1 R 2 R 3 R 4 R 5 R 6 R 1 / 1 R 3 -R 4 1 R 2 -R 4 R 2 R 3 R 2 -R 4 -R 3 R 3, R 5 R 2 -R 4 -R 3 -R 5 R 2 1 R 4 -R 3 / R 1 R 4 1 R 1 -R 3 R 4 -R 3 R 1 -R 3 -R 5 R 4 -R 3 -R 5 R 3 1 R 4 -R 2 R 1 R 4 / 1 R 1 -R 2 1 R 5 R 4 R 2 R 3 1 R 3 -R 1 1 R 2 R 1 / R 3 -R 5 R 3 R 3 -R 1 R 3 -R 4 1 R 3 / 1 R 6 R 5 -R 3 -R 1 R 5 -R 3 -R 4 R 5 -R 3 1 /

Forwarding Table R 1 Source Dest Path Cost Interface S D 1 D 2,

Forwarding Table R 1 Source Dest Path Cost Interface S D 1 D 2, D 3 R 2 -R 4 -R 3 -R 5 -R 6 2 5 Interface 1 S D 1 D 2, D 3 R 3 -R 4 R 3 -R 5 -R 6 2 3 Interface 2 Source Dest Path Cost Interface S D 1 D 2, D 3 R 4 -R 3 -R 5 -R 6 1 4 Interface 1 S D 1 D 2, D 3 R 1 -R 3 --R 4 R 1 -R 3 -R 5 -R 6 3 4 Interface 2 Source Dest Path Cost Interface S D 1 D 2, D 3 R 3 -R 4 R 6 2 1 Interface 1 S D 1 D 2, D 3 / R 6 / 1 Interface 2 R 5

Source-Specific Tree Motivation: For every specific source, we build a tree from the network

Source-Specific Tree Motivation: For every specific source, we build a tree from the network topology that allows the least total hop count from the source to all destinations. ( Satisfy the situation when K equals to N) Basic Principle: The source specific tree should cover the most shared paths to destinations. Algorithm of building the source-specific tree: 1. Count the number of shared paths to all destinations among possible path pairs 2. Subtract shared hops from unicast hops to all destinations and get the total hop count for a certain path combination ( total unicast hops - shared hops) 3. Compare all path pairs, select the path with the minimal final hop computed in step 2

Select K out of N ( 4 scenarios ) Scenario 1: no path is

Select K out of N ( 4 scenarios ) Scenario 1: no path is shared among N destinations R 1 Action: Select the K nearest destinations

Getting K out of N ( 4 scenarios ) Scenario 2: All N destinations

Getting K out of N ( 4 scenarios ) Scenario 2: All N destinations share a path Action: Unicast to the next router

Getting K out of N ( 4 scenarios ) Scenario 3: 2 out of

Getting K out of N ( 4 scenarios ) Scenario 3: 2 out of 3 destinations share paths. Action: Compare <total hop count to D 2, D 3>, < hop count to D 1 + min hop count(D 2, D 3)>

Getting K out of N ( 4 scenarios ) Scenario 4: 2 out of

Getting K out of N ( 4 scenarios ) Scenario 4: 2 out of 3 destinations share paths. D 1 D 2 R 1 D 3 Action: Compare <total hop count to D 2, D 3>, < hop count to D 1 + min hop count(D 2, D 3)>

Summary ● ● Key protocol design features k-out-of-n “packet datagram” multicast Performance Low throught

Summary ● ● Key protocol design features k-out-of-n “packet datagram” multicast Performance Low throught because of only 1 byte address length ● Each SRC ADDR tracks every known path in detail ● We could finally find the optimal shortest path based upon searching shared path ● ● Implementation complexity There will be at most N different paths from source to destination, and the number of destination host is 3 so time complexity is less than O(N^3)