Presentation is loading. Please wait.

Presentation is loading. Please wait.

15-441: Recitation 6. Outline  Project 1 Wrap up  Project 2 Intro  Questions.

Similar presentations


Presentation on theme: "15-441: Recitation 6. Outline  Project 1 Wrap up  Project 2 Intro  Questions."— Presentation transcript:

1 15-441: Recitation 6

2 Outline  Project 1 Wrap up  Project 2 Intro  Questions

3 Project 1 Wrapup  Congratulations! You’re done, regardless of your grade ;)  What did you think of the following: Difficulty Coding Documentation Our support

4 Project 1: Our Feedback to You  Pay attention to the assignments page Released checkpoints and scripts  USE THE BBOARD -- SRSLY It’s for your benefit If one TA is too busy to answer your question or not available, another can see it We are students too It helps others with your same question

5 Project 1: Us to You – Cont.  Pay attention to who the lead TA is Takes care of the grading Who you should contact about late submission  Your lead TAs: Project 1: Wittawat Project 2: Michael Project 3: David

6 Project 2: IRC Routing Daemon  Focus: not really IRC anymore All about routing: link-state  You NEED a project parnter You may NOT work alone

7 Finding a Project Partner  This is very important, you will spend hours and hours with this person  Start looking soon, inquire: Class schedules Additional constraints: research/work/life Hopes & desires: striving for 100%? 80%? Skills: someone good at routing logic and someone good at coding?

8 Post a Personal!  Talk to students After class and in recitation  Additionally, mail the bboard: Hi, my name is George. My class schedule is XXXXX. I have a job and I work from X-Y on days A and B….

9 IRC Servers and Routing

10 New Definitions  Node – IRC server + Routing Daemon  nodeID – unique node identifier  Neighbor – node’s A and B are neighbors if there is a virtual link between them  Forwarding port – same as IRC port  Local port – TCP port for server  daemon  Routing port – UDP port on daemon  OSPF – link-state protocol similar to the one you’ll be implementing  Routing table – used to store paths

11 Inter-Daemon Communcation

12 Link-state Routing Protocols  Protocols with a global view of the network Every daemon knows about every daemon Every daemon knows connectivity graph  Routing table constructed using shortest path tree  Flooding is used to propagate routing information

13 LSA: Link State Announcement Version: always 1 TTL: initial(32) value--; every hop Type: advertisement(0), ACK(1) sender nodeID: original sender sequence number: ++ per LSA num ______: # of entries Link entries: nodeID of neighbors User entries: NICKs on server Channel entries: channels on server

14 LSAs: When to Generate  Generate LSAs periodically Specified interval  Generate LSAs on-demand: User joins or quits First user on server to join a channel Neighbor is detected as down (timeout)

15 LSA Propagation from nodeID 1 #perl #C #perl #C V(1), TTL(32), T(0) SEQ(50) snodeID(1) L(2), U(0), C(1) 2 3 #linux LSA

16 #perl #C #perl #C V(1), TTL(32), T(0) SEQ(50) snodeID(1) L(2), U(0), C(1) 2 3 #linux LSA LSA Propagation from nodeID 1

17 #perl #C #perl #C V(1), TTL(32), T(0) SEQ(50) snodeID(1) L(2), U(0), C(1) 2 3 #linux LSA LSA Propagation from nodeID 1 Assume LSA from 2 got to node 5 before the LSA from 3 LSA

18 #perl #C #perl #C V(1), TTL(32), T(0) SEQ(50) snodeID(1) L(2), U(0), C(1) 2 3 #linux LSA LSA Propagation from nodeID 1 Assume LSA from 4 got to node 6 before the LSA from 5

19 Details  Daemon  Daemon: UDP  Use acks to make reliable  Don’t panic, sample UDP code going to be released

20 Computing Routing Tables  At every node: Compute shortest past from every node to every node Create next hops table  We will see in the following slides…

21 Inter-Server Communcation

22 Understanding the Routing #perl #C #perl #C PERL ROCKS! PRIVMSG

23 Routing: Posting to #perl #perl #C #perl #C PERL ROCKS! PRIVMSG

24 Understanding the Routing #perl #C #perl #C ROCKS! PRIVMSG

25 #perl #C #perl #C Node 1

26 #perl #C #perl #C Node 2

27 #perl #C #perl #C Node 5

28 #perl #C #perl #C Node 6

29 Server/Daemon Communication

30 Server  Daemon Comm.  Server and Daemon need to communicate  Server notifies daemon of updates  Networking details: Server  Daemon: TCP

31 Server and Daemon Cmds  Commands from server to daemon: ADDUSER: adds a user ADDCHAN: adds a channel REMOVEUSER: deletes a user REMOVECHAN: deletes a channel NEXTHOP: nodeID of next hop for target NEXTHOPS: next hop, given a target USERTABLE: user routing table CHANTABLE: channel routing table

32 Announcements  The rest of the details are going to be in the handout

33 Questions?


Download ppt "15-441: Recitation 6. Outline  Project 1 Wrap up  Project 2 Intro  Questions."

Similar presentations


Ads by Google