Transport Overview - PowerPoint PPT Presentation

1 / 10
About This Presentation
Title:

Transport Overview

Description:

CS433/533 Programming Assignment 2 Overview ... they will have address 0 and 1 Node.java ... Implementing TCP socket manage use use use On Command transfer ... – PowerPoint PPT presentation

Number of Views:91
Avg rating:3.0/5.0
Slides: 11
Provided by: YangR57
Learn more at: https://zoo.cs.yale.edu
Category:

less

Transcript and Presenter's Notes

Title: Transport Overview


1
CS433/533 Programming Assignment 2 Overview
2
Fishnet
  • Network protocol simulator emulator
  • Read fishnet-intro.pdf
  • Get started
  • Network topology (.topo) for emulator
  • Simulation script (.fish) for simulator
  • trawler.pl emulation coordinator
  • fishnet.pl interactive node emulation

3
Where to put your code
  • Under directory proj/
  • Related files Node.java, TCPManager.java,
    TCPSock.java
  • Do NOT modify files under lib/
  • E.g., the file Transport.java only serves as
    definition of transport packet format, do not
    rewrite it

4
Node.java
  • send(int destAddr, Packet packet)?
  • Call this method to send a packet you have
    constructed to a node with destAddr
  • How do I know the destinations address?
  • Fishnet assign the lowest unused address (0-254)
    to a newly started node
  • If you start two fish nodes, they will have
    address 0 and 1

5
Node.java
  • onCommand(String command)?
  • entry point for node commands, process commands
    here
  • Example 0 hello
  • Node 0s onCommand gets invoked with command
    hello

6
Node.java
  • onReceive(Integer from, byte msg)?
  • Entry point for receiving a packet
  • However, put your support for new protocols in
    receivePacket(int from, Packet packet)?
  • receivePacket(int from, Packet packet)?
  • Call your protocol specific packet processing
    code from this method

7
Node.java
  • addTimer
  • An example of how to use callbacks and timers
  • You may need to implement more sophisticated
    versions of it, since the current one only adds
    callbacks with no arguments

8
Interoperable Designs
  • You should stick to the protocol and API
    specification on course webpage
  • Connection setup
  • Connection tear-down
  • You are free to choose how you implement the
    specification
  • You are free to build your own test case (other
    than the sample transfer client/server)?

9
Interoperable Designs
  • We provide an example design sketch
  • Classes view

Node
On Commandserver
use
On Commandtransfer
TCPManagermanage multiple TCP sockets
TransferClientclient thread
TransferServerserver thread
use
manage
use
TCPSockImplementing TCP socket
10
How to test your code?
  • Use the two.topo file on course website to
    setup two directly connected nodes (with
    addresses 0 and 1)?
  • In your server command, specify the port to
    listen on, and backlog
  • In your transfer command, specify the
    destination node address and port, and the amount
    to transfer
  • Or, use the simulator scripts transfertest.fish
    under the scripts directory
Write a Comment
User Comments (0)
About PowerShow.com