What I'm working on?
Prototyping of data processing part in GSTAR routing protocol, namely, reliable hop-by-hop large chunk transfer.
TODO List
- Add storage part(ordering when rescheduling stored chunks)
- Router should keep a window of (RECVD - SENT)<CONST
- Multiple flows: fairness
Work Log
Jun 1st Got the host-router-host latency test configuration running, but still need to make sure click is handling all packets. Discussed about data process implementation with Kiran.
Jun 8th Compiled the code for aggregator and segmentor with ACK. Testing it on orbit...
Jun 13th tested: when packets get lost, sender can retransmit those packets.
July 8th worked out sender-router-receiver configuration on Orbit. Sent a 1GB file from sender via two hops to receiver.
Comparison of MobilityFirst vs. Hop protocol
MobilityFirst | Hop | |
Signaling | Chunk SYN msg | separate signaling msg: BSYN |
Chunk transfer | Yes, sending data in the unit of chunk | Yes |
Bitmap ACK | Yes | Yes |
ACK loss handling | similar with Hop, CSYN | waiting for ACK timeouts, resend BSYN |
When to ACK | received CSYN | received BSYN |
What to ACK | bitmap of whole chunk or a portion of chunk | bitmap of whole chunk |
Data caching (short-term) | Yes | Yes |
Data caching (long-term) | Yes | No |
Virtual retransmission | Yes | |
ACK withholding | Yes | Yes |
Backpressure control | Yes | Yes |
Signaling process in one hop reliable data transfer
Signaling process for one hop reliability
*Sender initiates chunk transfer by sending a CSYN message, receiver responds with an ACK with a bitmap identifying the receiving status
*After receiving an ACK, sender begins sending a chunk of data packets, and then send another CSYN asking for ACK.
*The transfer of this chunk terminates when the received bitmap says all packets are received.
*Every time a CSYN is sent, a timer will be set. If an ACK is not received before the timeout, the CSYN will be resent.
One-hop file transfer evaluation
Notes: For the same file, a smaller chunk size corresponds to larger number of chunks, therefore more incurred latency on signaling. This suggests reducing signaling to improve performance (maybe doesn't need signaling for every chunk).
Click diagram for sender-router-receiver config
./configure --disable-linuxmodule --enable-local make elemlist make install
Command to visualize a config. file:
tools/click−flatten/click−flatten ping−1.click | tools/click−viz/click−viz | dot −Tpng > ping−1.png
Attachments (8)
- Comparison_MobilityFirst_routing_vs_Hop.pdf (62.3 KB ) - added by 13 years ago.
- sender.png (48.4 KB ) - added by 13 years ago.
- receiver.png (36.8 KB ) - added by 13 years ago.
- receiver_3nodes.click (40.9 KB ) - added by 13 years ago.
- sender_3nodes.click (48.9 KB ) - added by 13 years ago.
- router_3nodes.click (60.8 KB ) - added by 13 years ago.
- Link_Layer_Reliability.png (8.0 KB ) - added by 13 years ago.
- FileTransferWithVariedChkSize.png (16.6 KB ) - added by 13 years ago.
Download all attachments as: .zip