Design and Deployment of a Reliable File Transfer Protocol over Asymmetric Satellite Networks Anupam...

Post on 18-Dec-2015

218 views 0 download

Tags:

transcript

Design and Deployment of a Reliable File Transfer Protocol over Asymmetric Satellite Networks

Anupam GoyalRoll no. 01329001

Guided By Dr. Sridhar Iyer

Outline of the Talk

Why Satellite networks for reliable transfer ? Reliable Multicast Transfer Strategies DEP Satellite Network The Problem and the proposed solution RTAN Deployment Problems Field Experiments and results Conclusions and Future Work

Satellite Networks

Widely used for audio-video transmissions Major disadvantages –

• large delay

• higher bit error rates

• limited bandwidth

Satellite Networks for Reliable Transfer

Interesting for reliable data transfer to clients dispersed over a large area due to• Inherent multicast nature

• Long reach

Reliable Multicast Protocols Types – based on error recovery responsibility

• Sender-Initiated • Sender keeps track of all the clients• Sender Asks for ACKs periodically

• Receiver-Initiated• Receiver detects packet loss through timers• Receiver sends NACKs to server

• Tree Based• ACK Tree of receivers• Group leaders perform error recovery

• Ring Based• Token site performs error recovery• Token passing

Various implementations : MFTP, RMTP, SRM, LBRM, MDP etc.

DEP Satellite Network

Very Small Aperture Terminal (VSAT) Network

Topology

• 512 kbps Demand Assigned Multiple Access channel

• 16 kbps Time Division Multiple Access channel

The DEP Network Setup

Satellite

512 Kbps Simplex Carrier

16Kbps TDMA Control

Satellite dish

Control Channel to Comnet Hub

Central Site - IIT Powai

Remote Site

Remote Site

Viasat HUBComnet Noida

INSAT 3B

512 kbps Video/Audio

Data Stream

3.8 Mtr. Ku-Band Antenna

ODU

Ethernet LAN

ROUTER

DAMA IDUDAMA IDUHSCUHSCU

DCUDCUVACANT SLOTVACANT SLOT

DCUDCU

SKYLINX IDU

Polling Channels.

Studio Type VC System

Camera, Mic, Speaker

H.323

16 kbps Control Channel

Recorded lecture

Data Broadcast

INSAT 3BINSAT 3B

3.8 Mtr. Ku-Band Antenna

ODU

Ethernet LAN

ROUTER

DAMA IDUDAMA IDUHSCUHSCU

DCUDCUVACANT SLOTVACANT SLOT

DCUDCUDAMA IDUDAMA IDUHSCUHSCU

DCUDCUVACANT SLOTVACANT SLOT

DCUDCU

SKYLINX IDU

Polling Channels.

Studio Type VC System

Camera, Mic, Speaker

H.323

16 kbps Control Channel

Recorded lecture

Data Broadcast

The Requirement

To send any file reliably over the satellite network to all or a particular receiving station.• Large files of the order of 1 GB : videotaped

lecture

• Small files of the order of KBs : tutorials etc.

The Problem

The need to have TCP like reliability. The need to send files of the order of 1

GB. The 16 kbps full duplex reliable channel

is too small for sending large files in reasonable time.

The 512 kbps DAMA channel is a multicast channel and hence offers no guarantee of reliable data delivery.

The Solution

Use the 512 kbps half duplex channel for data transfer.

Use the 16 kbps full duplex channel for control information exchange with the receivers.

Design an application level UDP based reliable file transfer protocol.

Logical TDMA point to point channel

Designed Protocol Reliable Transfer over Asymmetric

Networks (RTAN) Basic Idea of RTAN –

• The overall transfer consists of many Transfer Cycles• Each Transfer cycle consists of one Data Cycle and

many Recovery Cycles• A fixed number of packets are sent per Data Cycle

to all the clients.• All the packets dropped by at least one client are

remulticast in Recovery Cycles until all the clients have received all the packets sent in the Data Cycle.

The Protocol Sequence Graph

The Server State Transition Graph

The Client State Transition Graph

RTAN - The Basic Protocol: Server

Server side processing Start ConnectionAcceptorThread. Wait for Client

connections. Add connecting clients to a global Connection List.

Wait for file transfer request. Start KeepAlive thread. Start Transfer. Transmission setup cycle:

• Mark all the clients in the connection list as in session.

• Send file Transfer_Start message to all the clients on control channel. Information like file name, file size etc.

• Wait for ACKs.

RTAN - The Basic Protocol: Server

Start Transfer Cycle. Data Cycle

• Create transfer buffer and index.• Read N data packets of size M bytes from the file.

• Buffer them in the memory.

• Creates a N bit send index, one bit for each packet.

• M,N pre-decided.

• Send Data_Start message – start packet index, end packet index

• Wait for Acks from all clients.

• Multicast N data packets on the DAMA channel.

RTAN - The Basic Protocol: Server Recovery Cycle:

• Reuest N bit index from the RS’s on the control channel from all clients.

• Send Send_Index message to all clients.• Wait for ACKs.

• Perform boolean AND with the server send index. • Create recovery list from send buffer. • Remulticast the packets dropped by the clients.• Again request index from all clients.

If recovery list empty then transfer cycle ends• Send Recovery_End message to all clients.• Wait for ACKs.

If no more data to send then Transfer ends.• Send Transfer_End message to all clients.• Wait for ACKs.

RTAN - The Basic Protocol: Client

Client Side Processing Start the ControlProcessorThread and the

DataProcessorThread. Wait for Server messages.

• If Transfer_Start message, create a session object.

• If Data_Start message, create a buffer and N bit index.

• If Send_Index message, send index to the server.

• If Recovery_End message, flush buffer to disk.

• If Transfer_End message, delete session object.

RTAN - The Basic Protocol

• Contents of data packet:• RTAN header

• Actual data bytes

• RTAN header is of 17 bytes:• SessionID (4 bytes)

• FileID (4 bytes)

• Sequence Number (4 bytes)

• FileSize (4 bytes)

• Flags (1 byte)

RTAN - The Basic Protocol

Disadvantages:• The protocol is only as fast as the maximum

faulting RS.

• Limited by the number of RS’s that can be accommodated on the control channel.

Deployment of RTAN on DEP Satellite Network

Server at IIT Bombay Client at NCST, Juhu, Mumbai.

Deployment Problems The Router Configuration problem

• Multicast group, multicast port added to router The Time To Live problem

• TTL value set to greater than 3 The Router Table Update problem

• 2-3 seconds of multicast route setup time The Link Data rate Synchronization problem

• The server throttled according to the link data rate The Link Up-Down problem

• Dummy KeepAlive packet were introduced

Field Experiments

Achievable data rates• Granularity of 10 ms

• 24, 30, 37.5, 49.5 and 75 Kilobytes per second Error rate of DEP Satellite Network

• Very low – 0.5% in good channel conditions

• 2%-3% in early morning hours Data Packet Size

• DEP Satellite Network MTU – 1500 bytes

• Max Application data – 1440 bytes

• 17 byte RTAN header

Experiment 1: Transfer Time vs File Size

Experiment 2: Transfer Time vs Packets Per Transfer

Experiment 3: Transfer Time vs Data Rate

Experiment 2: Transfer Time vs Packets Per Transfer for different Data Rates

Conclusions Drawn from Field Experiments

Effect of time spent on exchanging control information on overall transfer time is greater for small files.

Data rate is the main contributing factor to the overall transfer time as against packets per transfer.

Data rates closest to link capacity result in maximum throughput.

Conclusions

A protocol for reliable transfer over asymmetric networks (RTAN) has been proposed.

Implementation of RTAN for writing a file transfer utility for DEP satellite network.

RTAN Basic implementation works quite well for the DEP Satellite Network owing to very low error rates.

Future Work

To extract a reliable transport layer protocol for asymmetric networks

To optimize the basic protocol implementation:• Version 1.1 Multiple Multicast Per cycle

• Version 1.2 Ignore Unruly Client

• Version 1.3 Regional Division of Clients

To adapt the protocol to changing DEP network topology

Thank YouThank You