Download group7

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Net bias wikipedia , lookup

Point-to-Point Protocol over Ethernet wikipedia , lookup

Peering wikipedia , lookup

Low Pin Count wikipedia , lookup

Distributed firewall wikipedia , lookup

TCP congestion control wikipedia , lookup

Computer network wikipedia , lookup

Backpressure routing wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Airborne Networking wikipedia , lookup

RapidIO wikipedia , lookup

Deep packet inspection wikipedia , lookup

Multiprotocol Label Switching wikipedia , lookup

IEEE 1355 wikipedia , lookup

Wake-on-LAN wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Routing in delay-tolerant networking wikipedia , lookup

Routing wikipedia , lookup

Transcript
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()”



“GetContent()”



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
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?


How to route a content-request packet?


Hosts update content periodically
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 algorithm
Routing Table for every Router:

IP Address
Output Port #
Hop Count
Routing
Controller
2
5
Router will use the Hop Count of the Routing
Controller and send a broadcast with a TTL = Hop
Count - 1
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 Controllers
 More 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
DHCP Server
C6
R4
R2
H2
R3
R1
H4
C4
R5
C9
H1
C2
Routing Controller
H3
C3
C5
C7
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)
C3
C1
ARP Table
C6
Hop Count to Routing
Controller =3
Broadcast with TTL = 2
R4
DHCP Server
TTL = 1
TTL = 2
R2
H2
R3
TTL = 1
R1
TTL = 0
TTL = 0
TTL = 0
C4
TTL = 1
H4
TTL = 0
R5
C9
H1
C2
C3
Routing Controller
H3
C3
C5
C7
Scenario 2: H2 – GetContent (C4)
C4
C3
C1
ARP Table
C6
Hop Count to Routing
Controller =3
Broadcast with TTL = 2
R4
DHCP Server
TTL = 1
TTL = 2
R2
H2
R3
TTL = 1
TTL = 0
TTL = 0
TTL = 0
C4
C4
TTL = 1
R1
H4
TTL = 0
R5
C9
H1
C2
Routing Controller
H3
C3
C5
C7