Presentation is loading. Please wait.

Presentation is loading. Please wait.

Networking Models and Designs By: Dan Sibbernsen Advisor: MikeyG.

Similar presentations


Presentation on theme: "Networking Models and Designs By: Dan Sibbernsen Advisor: MikeyG."— Presentation transcript:

1 Networking Models and Designs By: Dan Sibbernsen Advisor: MikeyG

2 Discussion Goals Brief look at Internet packets –Layers of abstraction BLAST algorithm –Uses –Advantages –Disadvantages My Implementation of BLAST

3 Packet Overview In every networking model, data is sent across a physical line through abstractions of 0s and 1s called packets. From FTP to HTTP, whatever you use the internet for, they all send information the same way, through the use of packets. Each packet carries with it certain information –a sending address –a receiving address –data to be transferred

4 http://www.uic.edu TCP Packet With more layers of abstraction, however, these required fields grow.

5 http://www.oreillynet.com Packet Abstractions

6 http://publib.boulder.ibm.com Lower Layers This is a breakdown of the very basic levels of networking.

7 Problem Suppose we want to send more data than can fit in one packet across the network.

8 Goals To implement a basic packet-switching network protocol on top of the Kaya Operating System. To analyze the Blast algorithm for packet transfer.

9 BLAST A networking algorithm that solves the problem of having message sizes larger than the maximum data allowed in one packet.

10 BLAST-What Receives a large message (i.e. 32MB). Breaks up the message into much smaller packets, and transmits them immediately.

11 BLAST data Packet The Key Components are as follows: –MID What message this packet is a part of –Type Either DATA or SRR –NumFrags How many packets are contained in this message. –FragMask What packet this is (0..n)

12 BLAST Sender Side FragMask –a 32 bit representation of which packet this is For instance, if this is the 5 th packet, then bit 5 is marked 1 and the rest are 0s. NumFrags –Represents how many packets the sender should expect. If the Message is broken down into 12 packets, then this number is 12. Type –For the sender, this will always be DATA.

13 BLAST – Sender Timers –When the last packet is sent, a timer is started. –If an SRR hasn’t been received when this timer expires, it resends all of the packets. –It does this x number of times before it quits.

14 BLAST Receiver Side When the Receiver gets the first packet, it creates a data structure to accept the rest. The packets then begin arriving and are put into the data structure according to what their FragMask says they are.

15 Internet ACKs An ACK (or acknowledgement) is a way for the receiver to notify the sender that a packet has been received. However, BLAST sends out all of its packets for a message without waiting for an ACK from the receiver. BLAST needed a new way to perform an ACK so that it could account for multiple packet loss.

16 BLAST ACK Key Components of the BLAST ACK FragMask –This represents which packets have not been received, so if packets 4 and 7 haven’t been received, bits 4 and 7 are set to 0, while the rest are 1s. Type –For the Receiver, this will always be an SRR.

17 SRRs- When An SRR is sent out when 1 of 2 events occur –The last packet arrives –A timer finishes This is to protect against the last packet being lost. If this timer expires 3 times (with an SRR sent each time), the receiver quits and frees up all the received packets.

18 BLAST-Advantages The BLAST algorithm is not heavily dependent upon the use of timers. –The Timers protect against the worst-case scenario: the packets simply cannot get from the sender to the receiver.

19 BLAST-Drawbacks No guaranteed transmission –Message is too small If only 1-2 packets are sent, neither might arrive. If last packet gets in faster than the rest, SRR is sent, resulting in more packets than necessary being redelivered.

20 My Project Implementation of the BLAST algorithm on top of the Kaya Operating System. Requirements: –vde (Virtual Distributed Ethernet) –uMPS (micro MPS simulator) –a working phases 1-3 of Kaya

21 How Transmit –Transmit would essentially take input of a packet. Source MAC address Destination MAC address Data to be transferred –Pass this information into a device in uMPS for sending to the receiver.

22 How Receive –Interrupt would occur on receiving machine Process the packet –Put it into a data structure –Await further packets –When last packet arrives, send an SRR

23 Future Endeavours Given time and the right motivation –Implement more layers upon BLAST, for instance, one that would guarantee packet delivery. –Look into other possible Operating Systems this could be implemented on.

24 Sources Peterson, Larry L. & Davie, Bruce S. Computer Networks: A Systems Approach. San Francisco: Morgan Kaufmann, 1996.

25 Special Thanks Michael Goldweber, for being my advisor, and also letting me use his Kaya phases 1-3, as well as his contribution to the uMPS project. Creators of uMPS –Renzo Davoli –Michael Goldweber Creator of VDE –Renzo Davoli


Download ppt "Networking Models and Designs By: Dan Sibbernsen Advisor: MikeyG."

Similar presentations


Ads by Google