ECE 544 Project3 Kush Patel Siddharth Paradkar Ke Dong.
-
Upload
isabella-robinson -
Category
Documents
-
view
219 -
download
0
Transcript of ECE 544 Project3 Kush Patel Siddharth Paradkar Ke Dong.
ECE 544 Project3
Kush Patel
Siddharth Paradkar
Ke Dong
Assumptions and Address Scheme Assumptions
Network contains Routing Controllers Routing Controllers contain info of content files at each host Hosts connected to routers via Ethernet We will have multiple Routing Controllers serving multiple areas
of the network Routing Controllers will “talk” to each other to update their tables Other assumptions such as 255 hosts, 255 content files etc.
Naming scheme and eventual address scheme Routers: Identify them as 1,2,3… Content: Use ID for each File
Bootstrapping and Discovery
Methods “CreateEntry()”
Send all content id # stored to the Routing Controller upon boot Routing Controller creates a table entry with the end host that has
the content file
“GetContent()” Default dest. Routing Controller. If Routing Controller does not
contain file, Routing Controller performs table search and finds closest host
Routing Controller queries “GetContent()” from Host X
UpdateContent() Routing Controller runs method to match host content files with
table entries periodically
Bootstrapping and Discovery
Routes Routers use Dijkstra to build table of routes and
output ports Hosts have a default router to send requests to No 2 Routers connect to the same host for
simplicity
Baseline Algorithm
Content routing algorithm How are contents advertised?
Hosts update content periodically How to route a content-request packet?
Via the Routing Controller How is the content actually delivered?
UDP Protocol
Baseline Algorithm
Content routing algorithm How to choose the ‘best’, among multiple hosts
having the same content? By default, Host will send request to Routing Controller with its address
as destination The default router will check the hop count to the Routing Controller and
send a GetContent() broadcast message on all the nodes with a TTL = Distance to Routing Controller – 1
The router will flood its connected hosts for a response , If a router that is closer than to the host than the Routing Controller, it will respond with the packet.
The host will discard any duplicate packet it received
Baseline Algorithm
Content routing algorithmRouting Table for every Router:
Router will use the Hop Count of the Routing Controller and send a broadcast with a TTL = Hop Count - 1
IP Address Output Port # Hop Count
Routing Controller
2 5
Packet Structure
IP based packet structure Two separate packet structures based on
protocol being utilized . Initially when all of the hosts are being added they
will send a packet based on TCP packet structure, it will wait for a ACK from the central Routing Controller.Src Add Dest Addr Content Count Payload
C1, C2, C3, C4
Packet Structure
When a transmission from host to host happens, they will employ a UDP scheme for the packet structure.
Src Add Dest Addr Content ID# Payload
Data Transfer and Reliability
Message Forward Unicast – For sending contents to Routing Controllers Boradcast – For GetContent Queries() Use UDP for packet transfer – No need for TCP Control.
If Packet fails, host requests retransmission TCP for CreateEntry()
ARQ Scheme We will want to use a stop and wait ARQ method, where
the number of frames being sent are determined by the sliding window size, and the receiver buffers any out of order packets. We believe that because we have focused on reducing the number of hops needed to a transmission, the # of retransmissions required will be very low.
Advantages
Centralized Routing ControllersMore robust. Every host knows to send requests to one place. “Brain” of the network hereby managing nodes and periodic updates.There is not a complete flooding of the network.
Disadvantages
Centralized Routing Controllers bottleneck. Multiple request from multiple hosts can overload the Routing Controller scheduling
Flooding can introduce a network overload
Network Architecture
ARP Table
C1 C6
C4
C5
C9
R3
H1
H2
H3
R1
R2
R4
R5
DHCP Server
Routing Controller
C3
C2 C7
H4
2 Scenarios
Host wants to get file that has a hop count greater than the routing controller.
Host wants to get file from a node that is closer than the routing controller.
Scenario 1: H2 – GetContent (C3)
ARP Table
C1 C6
C4
C5
C9
R3
H1
H2
H3
R1
R2
R4
R5
DHCP Server
Routing Controller
C3
C2 C7
H4
C3
Hop Count to Routing Controller =3Broadcast with TTL = 2
TTL = 2
TTL = 1
TTL = 1
TTL = 1
TTL = 0
TTL = 0 TTL = 0
TTL = 0
C3
C3
Scenario 2: H2 – GetContent (C4)
ARP Table
C1 C6
C4
C5
C9
R3
H1
H2
H3
R1
R2
R4
R5
DHCP Server
Routing Controller
C3
C2 C7
H4
Hop Count to Routing Controller =3Broadcast with TTL = 2
TTL = 2
TTL = 1
TTL = 1
TTL = 1
TTL = 0
TTL = 0 TTL = 0
TTL = 0
C4
C3C4