Internet DRAFT - draft-azmak-bst
draft-azmak-bst
Internet Draft O. Azmak, C. Leviatan,
I. Pechtalt
Document: draft-azmak-bst-00.txt Flash Networks, Inc.
Expires: 2001 February 2001
Boosted Session Transport (BST) Protocol for Improved Performance in
Satellite, Wireless and Mobile Networks
Status of this Memo
This document is an Internet-Draft and is in full conformance
with all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other documents
at any time. It is inappropriate to use Internet-Drafts as
reference material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Abstract
TCP treats packet losses as an indication of congestion in the
network, and it reduces transmission rates drastically until an
optimal rate is found for data transmission. The problems that
satellite and other wireless links pose to TCP have been addressed
elsewhere (please see Section 2). This paper proposes a new
Transport layer protocol, Boosted Session Transport (BST) that is
intended to work as a counterpart to TCP over a single wireless or
satellite hop. The BST protocol introduces a number of mechanisms to
specifically address the demands of satellite, wireless and mobile
networks, in terms of transient packet losses, large Round-Trip Time
(RTT), and need for more efficient use of available bandwidth. BST
has been designed to be used over the wireless access links to the
Internet; therefore, it is intended to work seamlessly with TCP in
order to provide wireless access to the whole of Internet, not to a
limited subset of it. This paper describes the BST protocol.
Table of Contents
Status of this Memo................................................1
Abstract ..........................................................1
Conventions used in this document..................................2
1. Introduction..............................................2
Azmak, et al. Informational - Expires December 2001 1
Boosted Session Transport (BST) Protocol February 2001
2. Background................................................3
3. BST Header Information....................................4
3.1. CONNECTION_RQST and CONNECTION_ACK........................5
3.2. NACK......................................................6
4. Connection Establishment & Release........................7
4.1. Connection Establishment..................................7
4.2. Connection Release........................................8
5. Data Transfer.............................................8
5.1. ACK/NACK..................................................8
5.1.1. Packet Loss v. Packet "Disorder"..........................9
5.2. Rate Control.............................................10
5.3. Bandwidth Sharing........................................10
5.3.1. Control and Data Queues..................................10
5.3.2. Simultaneous Connections.................................10
5.3.3. Non-BST Traffic..........................................11
6. Security Considerations..................................11
7. References...............................................12
8. Author's Addresses.......................................12
Conventions used in this document
BST indicates Boosted Session Transport.
The term "wireless" is meant to encompass not only satellite, but
also cellular, PCS, CDPD and other mobile data solutions, both in 2G
and 3G technologies.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in
this document are to be interpreted as described in RFC-2119 [1].
1. Introduction
This paper proposes a new protocol that is specifically designed to
overcome the performance degradation that TCP experiences in
wireless media. As it is well established, TCP's design principles
treat the network as a "black box", and consider packet loss only as
a sign of congestion in the network. Because of these principles,
TCP does not deal well with transient errors (due to noise or signal
drop out, as opposed to congestion in the network) and long Round-
Trip Times. In addition, TCP is too "chatty" to be effective over
wireless links.
Boosted Session Transport (BST) protocol was designed to improve the
bandwidth utilization in wireless (satellite and cellular) access
points to the Internet. It is designed to interwork with TCP as a
transport layer connection-oriented protocol. On the Client side,
TCP packets are converted into BST packets. These BST packets are
transmitted over the RF link, and the BST Server reconstitutes TCP
packets. These TCP packets are then routed to the Internet. During
the conversion to and from BST, TCP header information is replaced
Azmak, et al. Informational - Expires December 2001 2
Boosted Session Transport (BST) Protocol February 2001
with BST headers. TCP payload is compressed whenever possible, in
order to increase the effective throughput over the wireless link.
This paper is organized as follows. Section 2 provides background on
TCP performance in satellite networks. This background lends itself
to addressing the demands of terrestrial cellular networks, as well.
Section 3 provides the BST header information, BST messages and
their parameters. Section 4 describes connection establishment and
release in the BST protocol. Section 5 describes data transfer and
congestion avoidance mechanisms. Section 6 addresses the security
considerations.
2. Background
Performance degradation that TCP suffers over satellite links, and
potential resolutions have been discussed in earlier RFCs [2], [3].
[2] provides a survey of research topics that are currently under
consideration to overcome TCP's problems in satellites. [3] provides
a description of the problems TCP faces in satellites and makes a
number of recommendations in dealing with those difficulties. In
addition, [7] highlights the requirements that "Long Thin Networks"
place on TCP, surveys proposed solutions, and makes a number of
recommendations. Many of the recommendations in [3] and [7] mirror
one another, and they pose the problem that wireless links pose to
TCP as follows.
TCP employs four mechanisms to monitor its transmission
characteristics: slow start, congestion avoidance, fast retransmit
and fast recovery. The problem that wireless links present to TCP
are: long feedback loop, large bandwidth * RTT (Round-Trip Time)
product, variable round-trip times, intermittent connectivity, and
increased Bit-Error Rate (BER).
Long feedback loop means that Acknowledgements will take longer to
reach the sender. This prolongs the initial period during which
slow-start algorithm controls the bandwidth utilization. With larger
RTT, it takes TCP longer to achieve optimal transmission speed, and
a lot of available bandwidth is not utilized. Faster methods for
connection bandwidth determination and optimal MTU sizing [4] are
needed to counter some of the effects of long feedback loops.
Regarding optimal MTU size, one should keep in mind that in
particularly wireless packet data networks, such as CDPD, where
available bandwidth is shared among a varying number of users with
varying bandwidth demands, optimal MTU size is likely to change over
the course of a single session.
Lange bandwidth*RTT product increases the amount traffic that TCP
has to maintain "in flight" without receiving Acknowledgements.
Having a larger number of packets "in flight" compounds the problems
that are caused by variable RTT, intermittent connectivity, and
larger BER. Therefore, efficient mechanisms are needed to limit
retransmissions only to lost packets, and to deal effectively with
packets arriving out of order ("packet disorder"). These mechanisms
Azmak, et al. Informational - Expires December 2001 3
Boosted Session Transport (BST) Protocol February 2001
can be implemented via Delayed ACKs [6] and Selective ACKs (SACK)
[5], combined with more effective management of transmit and receive
windows.
Variable RTT affects the order in which packets arrive at the
receiver. For instance, packets 1, 2, 3 sent in that order, may
arrive at the receiver in the order 2, 3, 1. Alternative
Acknowledgement methods that are mentioned above are needed in order
to differentiate packet loss from loss of packet order ("packet
disorder"), and to deal with the two cases more effectively.
Intermittent connectivity can be experienced in non-Geo Stationary
Orbit (GSO) satellite configurations [3], and also in cellular/PCS
networks due to handovers. These breaks in connectivity are likely
to introduce packet losses. Please see the discussion on larger BER
below on its implications for TCP.
Larger BER affects the TCP in an indirect way. By design, TCP treats
packet loss as a sign of congestion in the network; therefore, loss
of a single packet causes drastic reduction in transmission speeds.
Greater BER in wireless networks tends to cause packet loss due to
the channel characteristics of the radio frequency (RF) environment,
rather than congestion in the link. Another indirect effect of
greater BER is felt in the ordering of packets. This is due to the
Automatic Resend reQuest (ARQ) mechanisms that many wireless Link
Layer (L2) solutions employ. When an L2 ARQ protocol detects
corruption, it requests certain package(s) to be resent. This is
done below TCP/IP layers, and it introduces variable delay to the
transmission path.
In summary, a number of mechanisms have been recommended to enhance
TCP's performance over satellite, and by extension, over wireless
networks [2, 3, 7]. Boosted Session Transport (BST) protocol
incorporates many of these recommendations, and introduces new ideas
in order to maximize bandwidth utilization over wireless links in
which bandwidth is scarce and transient errors are frequent than in
terrestrial media. The improvements include a less chatty
transmission scheme, delayed ACKs, selective ACKs/NACKs (SACKs),
larger transmission windows and faster retransmission and recovery
algorithms, and mechanisms to differentiate packet loss from loss of
packet order. The rest of this paper describes the BST messages,
parameters, and basic data transmission.
3. BST Header Information
This section provides the format for the BST header, and describes
the parameters of the header.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Azmak, et al. Informational - Expires December 2001 4
Boosted Session Transport (BST) Protocol February 2001
| Dest port | Type | Flags |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| msg_no |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Lmsg no |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
"dest_port" (Short integer) is the port number for the remote end of
a BST connection.
"type" (Char) indicates which of the following messages is intended
in the current segment:
1. SHUTDOWN - Close BST connection
2. CONNECTION_RQST - Request a new connection
3. CONNECTION_ACK - Acknowledgement of a CONNECTION_RQST
4. MSG_LOST - a Negative Acknowledgement.
5. MSG_ALIVE - A message to keep a connection open, when there is no
data to be sent.
6. MSG_SEND - Message for regular data transfer.
"flags"(Unsigned Char) is used to indicate the following conditions:
1. Fragmentation (bit 7) - whether the payload has been fragmented;
2. Last Fragment (bit 6) - to identify the last fragment in such a
transfer. This bit is set to 1 in the last fragment.
3. Internal use (bit 2) - undefined;
4. BST Stop (bit 0) - is a flow-control flag that the receiver sends
to the sender to stop BST traffic in order to alleviate buffer
overflow.
"msg_no" (Unsigned Long) is the sequence number of the current BST
packet.
"Lmsg_no" (Unsigned Long) is the sequence number of the last message
that was received in order.
3.1. CONNECTION_RQST and CONNECTION_ACK
The header format and the list of parameters that are exchanged
during establishing a connection are provided below.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TX_BW_SIZE |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RX_BW_SIZE |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| KEEP_ALIVE_INTERVAL |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| RX_BW_TIMEOUT |
Azmak, et al. Informational - Expires December 2001 5
Boosted Session Transport (BST) Protocol February 2001
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SRC_PORT | VERSION |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAX_RX_BW_SLOT |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CliIPNum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CliIP |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CliIP |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
TX_BW_SIZE (Unsigned Long): Size of the TX window. Number of packets
after which an ACK is expected
RX_BW_SIZE (Unsigned Long): Size of the RX window. Number of packets
after which an ACK is sent.
KEEP_ALIVE_INTERVAL (Unsigned Long): The interval at which to send
an ACK in order to keep the connection open.
RX_BW_TIMEOUT (Unsigned Long): The interval after which an ACK is to
be sent, even in the absence of incoming packets.
SRC_PORT (Unsigned Short): BST local port number.
VERSION (Unsigned Short): BST version.
MAX_RX_BW_SLOT (Unsigned Long): Maximum number of bytes that can be
sent within a time slot.
TX_TIME_SLOT (Unsigned Long): Duration of a timeslot (in multiples
of 50ms.)
CliIpNum (Unsigned Long): Group Client: Number of subsets for which
the client is responsible.
CliIP[CliIPNum] (Array): IP address and subnet mask for each subnet.
3.2. NACK
The header format and the parameters that are used in Negative
Acknowledgement (NACK) are described below.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| num_of_holes |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| last_Received |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Azmak, et al. Informational - Expires December 2001 6
Boosted Session Transport (BST) Protocol February 2001
| hole[0] Start |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| hole[0] End |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| hole[0] Status |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| hole[n] Start |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| hole[n] End |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| hole[n] Status |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
"num_of_holes" (Unsigned Long): The number of holes that are
identified in this message.
"last_Received" (Unsigned Long): The sequence number of the most
recently received packet.
"holes[]" (Array): An array of information for each gap (hole) in
reception. A hole is a contiguous set of packets that are expected
at the Receiver, but not received, even though packets with higher
sequence numbers have already been received. A hole is identified by
the following information:
1. Start: sequence number of the first packet that has not been
received.
2. End: sequence number of the last packet that has not been
received.
3. Status: indication of how many times the packets in a particular
hole have been re-requested. Each time the Receiver sends a NACK for
a particular hole, it increments the Status parameter by 1.
The "holes" array includes these three information elements for
every known hole at the time of a NACK.
4. Connection Establishment & Release
This section describes the mechanisms for connection establishment
and release. The terms "Client" and "Server" are used to identify
the two ends of a connection. Even though the protocol is symmetric,
in the rest of the paper, "Client" is the agent that initiates
connection setup and release.
4.1. Connection Establishment
Connection establishment is done via two-way handshake, as opposed
to TCP's three-way handshake. The Client sends a CONNECTION_RQST
message to request a new connection. The Server responds with
CONNECTION_ACK message to complete the connection. When the Client
Azmak, et al. Informational - Expires December 2001 7
Boosted Session Transport (BST) Protocol February 2001
receives the CONNECTION_ACK message, it can move to the data
transfer stage.
The Client will attempt to request a connection for a limited number
of times. The parameter CONNECT_RETRIES determines the number of
times that the Client will attempt a connection.
At each connection request, the Client will wait for a limited
period to receive an acknowledgement. This duration is determined by
the CONNECT_TIMEOUT timer.
The Client will stop its attempts after the number of unsuccessful
connection requests reaches the value indicated by CONNECT_RETRIES.
4.2. Connection Release
Either side, the Client or the Server, can initiate connection
release. Typically, an application that is running on a Client will
instruct BST (or TCP for that matter) to close an existing
connection. This is done via SHUTDOWN message. No acknowledgement is
expected.
In addition, each side may close its end of a connection and release
resources independent of the other, if one of the following two
conditions occur; (a) No packet has been received from the other
side for a duration that is specified by the KEEP_ALIVE_TO timer,
(b) there has been no data exchange - excluding MSG_ALIVE messages -
between the two sides for a duration that is specified by the
IDLE_TO timer. MSG_ALIVE messages maintain a connection in open
state, even when no user/application data is flowing, in order to
avoid frequent teardown and re-establishment of BST sessions.
5. Data Transfer
Data transfer occurs via MSG_SEND and ACK/NACK (MSG_ALIVE/MSG_LOST)
messages. BST incorporates a number of mechanisms in order to
improve the throughput over a wireless link.
These mechanisms are reduced number of Acknowledgement messages,
selective negative Acknowledgement, dynamic rate control and
Bandwidth sharing. They are described below.
5.1. ACK/NACK
In BST, the Client (Receiver) sends an Acknowledgement for every n
packets. The value of n is determined by either of two parameters,
"RX_BW_SIZE", or "RX_BUF_SIZE". How these parameters differ from one
another is described later in this document.
Similarly, the Server (Sender) expects to receive an Acknowledgement
for every m packets that it sends. The value of m is determined by
either of two parameters, TX_BW_SIZE or TX_BUF_SIZE. Clearly,
TX_BUF_SIZE and RX_BUF_SIZE (and TX_BW_SIZE & RX_BW_SIZE) are
Azmak, et al. Informational - Expires December 2001 8
Boosted Session Transport (BST) Protocol February 2001
related to one another, and the values of these parameters are
exchanged between the Server and the Client during connection
establishment. The RX and TX parameters are similar in concept to
the "advertised window size" and "cwnd", respectively; however, they
operate differently, in that this information is not contained in
every packet that traverses the network. It is exchanged between the
two parties when the connection is made. Determination of optimal
values for these parameters over a dynamic link is beyond the scope
of this paper.
In addition, two timers, RX_BUF_TIMEOUT and RX_BW_TIMEOUT,
associated with the parameters RX_BUF_SIZE and RX_BW_SIZE,
respectively, are used to guarantee that an Acknowledgement or
Negative Acknowledgement is sent within a reasonable time in the
case of high packet loss or large delays between the Sender and the
Receiver. Determination of optimal values for these parameters is
beyond the scope of this paper.
5.1.1. Packet Loss v. Packet "Disorder"
BST differentiates lost packets from packets that are received out
of order (packet disorder). This is done in order to limit the
number of unnecessary retransmissions over links that are bandwidth
limited and prone to noise.
At the Receiver, packet loss and packet disorder can be
indistinguishable. For instance, when one considers the case in
which the Sender sends packets 1, 2 and 3 in order, and the Receiver
receives packets 1 and 3 in that order, but does not receive packet
2. At this point, the Receiver cannot differentiate whether packet
is lost or delayed in the network. In order to resolve this
confusion, the BST waits for a period of time, in order to see if
packets that are expected will arrive, before reporting them missing
to the Sender.
This is accomplished with the aid of two timers, DISORDER_TIME and
HOLE_REPORT_TIME. If the Receiver receives a packet that is deemed
to be out of order, it will wait for a period of time determined by
DISORDER_TIME before declaring a "hole". This hole will be reported
to the Sender in the next NACK message. A NACK will never be
initiated for a potential hole before its DISORDER_TIME timer
expires.
HOLE_REPORT_TIME determines the period at the end of which a hole is
to send a NACK. In the NACK, the Receiver is to report all known
holes to the Sender via a NACK message. When there is at least one
definite hole whose HOLE_REPORT_TIME timer has expired, the NACK
will include all other holes, even if their HOLE_REPORT_TIME timers
have not yet expired.
In this way, HOLE_REPORT_TIME timer makes it possible to avoid
excessive NACKs in a noisy environment (high BER), in which packet
loss rate may be high.
Azmak, et al. Informational - Expires December 2001 9
Boosted Session Transport (BST) Protocol February 2001
5.2. Rate Control
BST employs a time-division mechanism for transmission. The Sender
determines a time-slot, and the maximum number of packets that can
be sent during each time-slot. Therefore, by increasing or
decreasing the number of packets that can be transmitted during each
time-slot, BST can manage the rate of transmission.
The specifics of the rate control mechanism are beyond the scope of
this paper.
5.3. Bandwidth Sharing
The BST protocol has the ability to support a number of simultaneous
connections. In addition, it is able to support non-BST traffic in a
pass-through mode. These mechanisms are described below.
5.3.1. Control and Data Queues
For each BST link, two queues are defined at the Sender:
1. Data packets.
2. Control messages and data packets that are to be retransmitted.
These queues may be defined on a per-connection basis, or they may
be shared among several BST connections.
In each time-slot, control messages and retransmitted data packets
are given priority. Data packets from queue 1 are transmitted, only
if there is additional bandwidth available.
5.3.2. Simultaneous Connections
When a link is shared among several BST connections, each connection
is allocated a share of the overall bandwidth. Each connection is
guaranteed a minimum bandwidth, and the remaining bandwidth is
distributed in equal chunks in a round-robin fashion among all
existing connections.
This approach guarantees each connection the ability to maintain its
status, because no connection is denied the ability to send at least
one message within each time-slot. In those cases where some of the
connections need additional bandwidth and others do not, this
approach also makes it possible to make better use of the overall
bandwidth.
In addition, BST can manage its TX & RX windows and timers, on a
per-connection basis, or on a per-link (multiple connections) basis.
Similar parameters determine which approach is taken, in terms of
BST link management. TX_BUF_SIZE, RX_BUF_SIZE, RX_BUF_TIMEOUT
parameters are used when multiple connections are managed
Azmak, et al. Informational - Expires December 2001 10
Boosted Session Transport (BST) Protocol February 2001
simultaneously. TX_BW_SIZE, RX_BW_SIZE and RX_BW_TIMEOUT parameters
are used when each connection is managed separately.
5.3.3. Non-BST Traffic
Under certain circumstances, BST enables a connection to bypass BST
in favor of TCP or UDP traffic. In order to support this ability, a
portion of the available bandwidth is allocated to non-BST traffic.
Size of non-BST bandwidth is determined by the NON_BST_BW parameter.
If none of the existing connections request bandwidth for non-BST
traffic, this bandwidth is returned to the BST pool, to be utilized
by BST connections.
6. Security Considerations
The BST protocol does not affect any of the Transport layer security
protocols, such as Secure Sockets Layer (SSL), or Transport Layer
Security (TLS). This is because, BST does not modify the contents of
the TCP payload.
Similarly, BST does not pose any potential security risk to Layer 2
Protocols, such Point-to-Point Protocol (PPP), because it does not
modify IP information.
On the other hand, the BST protocol replaces TCP headers with BST
headers over the wireless/satellite hop. As a result, potential
security issues exist with the Security Architecture for the
Internet Protocol (IPSec) [8]. This is due to the fact that
Authentication Header (AH) and Encapsulating Security Payload (ESP)
information is calculated using much of the TCP header information.
Possible resolutions exist, such as managing two secure and
interrelated links, one over the BST hop and another over the TCP
connections spanning any intranet, or the rest of the Internet. At
this writing, possible resolutions are under study.
Azmak, et al. Informational - Expires December 2001 11
Boosted Session Transport (BST) Protocol February 2001
7. References
1 Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997
2 Allman, M., ed., et al. "Ongoing TCP Research Related to
Satellites", RFC 2160, February 2000.
3 Allman, M. Glover, D., Sanchez, L., "Enhancing TCP Over Satellite
Channels using Standard Mechanisms", RFC 2488, January 1999.
4 Mogul, J., and Deering, S., "Path MTU Discovery", RFC 1191,
November 1990.
5 Mathis, M., Mahdavi, J., Floyd, S. and Romanow, A., "TCP Selective
Acknowledgement Options", RFC 2018, October 1996.
6 Braden, R., "Requirements for Internet Hosts -- Communication
Layers, STD 3, RFC 1121, October 1989.
7 Montenegro, G., Dawkins, et al., "Long Thin Networks", RFC 2757,
January 2000.
8 Kent, S., Atkinson, R., "Security Architecture for the Internet
Protocol", RFC 2401, November 1998.
8. Author's Addresses
Okan Azmak
Flash Networks, Inc.
2137 Highway 35 N Phone: 1-732-203-4070 x21
Holmdel, NJ USA Email: okan@flashnetworks.com
Chava Leviatan
Flash Networks, Inc.
16 Galgalei Haplada St
Herzelia 46733 Phone: +972 (9) 958 0666 x221
Israel Email: chava@flashnetworks.com
Itzcak Pechtalt
Flash Networks, Inc.
16 Galgalei Haplada St
Herzelia 46733 Phone: +972 (9) 958 0666 x219
Israel Email: itzcak@flashnetworks.com
Azmak, et al. Informational - Expires December 2001 12