Table Of Contents
Rate Based Satellite Control Protocol
Restrictions for Rate Based Satellite Control Protocol
Information About Rate Based Satellite Control Protocol
Performance Enhancing Proxy over Satellite Links
How to Configure Rate Based Satellite Control Protocol
Verifying that the RBSCP Tunnel Is Active
Configuration Examples for Rate Based Satellite Control Protocol
Configuring the RBSCP Tunnel: Example
Configuring Routing for the RBSCP Tunnel: Example
Rate Based Satellite Control Protocol
Rate Based Satellite Control Protocol (RBSCP) was designed for wireless or long-distance delay links with high error rates, such as satellite links. Using tunnels, RBSCP can improve the performance of certain IP protocols, such as TCP and IP Security (IPSec), over satellite links without breaking the end-to-end model.
Feature History for Rate Based Satellite Control Protocol
Finding Support Information for Platforms and Cisco IOS Software Images
Use Cisco Feature Navigator to find information about platform support and Cisco IOS software image support. Access Cisco Feature Navigator at http://www.cisco.com/go/fn. You must have an account on Cisco.com. If you do not have an account or have forgotten your username or password, click Cancel at the login dialog box and follow the instructions that appear.
Contents
•
Restrictions for Rate Based Satellite Control Protocol
•
Information About Rate Based Satellite Control Protocol
•
How to Configure Rate Based Satellite Control Protocol
•
Configuration Examples for Rate Based Satellite Control Protocol
Restrictions for Rate Based Satellite Control Protocol
•
RBSCP was designed for wireless or long-distance delay links with high error rates such as satellite links. If you do not have long-distance delay links with high error rates, do not implement this feature.
•
If IP access lists (ACLs) are configured on an interface that is used by an RBSCP tunnel, the RBSCP IP protocol (199) must be allowed to enter and exit that interface or the tunnel will not function.
•
RBSCP has some performance limitations because traffic through the tunnel is process-switched.
Information About Rate Based Satellite Control Protocol
To configure the RBSCP, you should understand the following concepts:
•
Performance Enhancing Proxy over Satellite Links
IP over Satellite Links
Satellite links have several characteristics that affect the performance of IP protocols over the link. Figure 1 shows that satellite links can have a one-way delay of 275 milliseconds. A round-trip time (RTT) of 550 milliseconds is a very long delay for TCP. Another issue is the high error rates (packet loss rates) that are typical of satellite links as compared to wired links in LANs. Even the weather affects satellite links, causing a decrease in available bandwidth, and an increase in RTT and packet loss.
Figure 1 Typical Satellite Link
Long RTT keeps TCP in a slow start mode, which increases the time before the satellite link bandwidth is fully used. TCP and Stream Control Transmission Protocol (SCTP) interpret packet loss events as congestion in the network and start to perform congestion recovery procedures, which reduce the traffic being sent over the link.
Although available satellite link bandwidths are increasing, the long RTT and high error rates experienced by IP protocols over satellite links are producing a high bandwidth-delay product (BDP).
Performance Enhancing Proxy over Satellite Links
To address the problem of TCP being kept in a slow start mode when a satellite link is used, a disruptive performance enhancing proxy (PEP) solution is introduced into the network. In Figure 2 you can see that the transport connection is broken up into three sections with hosts on the remote side connecting to the Internet through their default router. The router sends all Internet-bound traffic to the TCP PEP, which terminates the TCP connection to the Internet. The PEP generates a local TCP ACK (TCP spoofing) for all data. Traffic is buffered and retransmitted through a single PEP protocol connection over the satellite link. The second PEP receives the data from the satellite link and retransmits the data over separate TCP connections to the Internet. TCP transmission is disrupted, so dropped packets are not interpreted as TCP congestion and can be retransmitted from buffered data. Minimal TCP ACKs and reduced TCP slow starts allow more bandwidth to be used.
Figure 2 Disruptive TCP PEP Solution
One of the disadvantages to using disruptive TCP PEP is the breaking of the end-to-end model. Some applications cannot work when the flow of traffic is broken, and the PEP has no provision for handling encrypted traffic (IPSec). New transport protocols such as SCTP require special handling or additional code to function with disruptive TCP PEP. An additional managed network component is also required at every satellite router.
RBSCP over Satellite Links
RBSCP has been designed to preserve the end-to-end model and provide performance improvements over the satellite link without using a PEP solution. IPSec encryption of clear-text traffic (for example a VPN service configuration) across the satellite link is supported. RBSCP allows two routers to control and monitor the sending rates of the satellite link, thereby increasing the bandwidth utilization. Lost packets are retransmitted over the satellite link by RBSCP preventing the end host TCP senders from going into slow start mode.
RBSCP is implemented using a tunnel interface as shown in Figure 3. The tunnel can be configured over any network interface supported by Cisco IOS software that can be used by a satellite modem or internal satellite modem network module. IP traffic is sent across the satellite link with appropriate modifications and enhancements that are determined by the router configuration. Standard routing or policy-based routing can be used to determine the traffic to be sent through the RBSCP tunnel.
Figure 3 Nondisruptive RBSCP Solution
RBSCP tunnels can be configured for any of the following features.
Time Delay
One of the RBSCP routers can be configured to hold frames due for transmission through the RBSCP tunnel. The delay time increases the RTT at the end host and allows RBSCP time to retransmit lost TCP frames or other protocol frames. If the retransmission is successful, it prevents lost frame events from reaching the end host where congestion procedures would be enabled. In some cases the retransmission can be completed by RBSCP without inserting the delay.
ACK Splitting
Performance improvements can be made for clear-text TCP traffic using acknowledgement (ACK) splitting in which a number of additional TCP ACKs are generated for each TCP ACK received. TCP will open a congestion window by one maximum transmission unit (MTU) for each TCP ACK received. Opening the congestion window results in increased bandwidth becoming available. Configure this feature only when the satellite link is not using all the available bandwidth. Encrypted traffic cannot use ACK splitting.
Window Stuffing
Clear-text TCP and SCTP traffic can benefit from the RBSCP window stuffing feature. RBSCP can buffer traffic so that the advertised window can be incremented up to the available satellite link bandwidth or the available memory in the router. The end host that sends the packets is fooled into thinking that a larger window exists at the receiving end host and sends more traffic. Use this feature with caution because the end host may send too much traffic for the satellite link to handle and the resulting loss and retransmission of packets may cause link congestion.
SCTP Drop Reporting
SCTP uses an appropriate byte counting method instead of ACK counting to determine the size of the transmission window, so ACK splitting does not work with SCTP. The RBSCP tunnel can generate an SCTP packet-dropped report for packets dropped across the satellite but not as a result of congestion loss. This SCTP drop reporting is on by default and provides a chance to retransmit the packet without affecting the congestion window size. Actual congestion losses are still reported, and normal recovery mechanisms are activated.
How to Configure Rate Based Satellite Control Protocol
This section contains the following tasks:
•
Configuring the RBSCP Tunnel (required)
•
Verifying that the RBSCP Tunnel Is Active (optional)
•
Verifying the RBSCP Traffic (optional)
Configuring the RBSCP Tunnel
Perform this task to configure the RBSCP tunnel. Remember to configure the router at each end of the tunnel.
Prerequisites
Ensure that the physical interface to be used as the tunnel source in this task is already configured.
SUMMARY STEPS
1.
enable
2.
configure terminal
3.
interface type number
4.
ip unnumbered interface-type interface-number
5.
tunnel source {ip-address | interface-type interface-number}
6.
tunnel destination {hostname | ip-address}
7.
tunnel bandwidth {receive | transmit} bandwidth
8.
tunnel mode {aurp | cayman | dvmrp | eon | gre | gre multipoint | ipip [decapsulate-any] | iptalk | mpls | nos | rbscp}
9.
tunnel rbscp ack_split split-size
10.
tunnel rbscp delay
11.
tunnel rbscp report
12.
tunnel rbscp window_stuff step-size
13.
exit
DETAILED STEPS
What to Do Next
This task must be repeated on the router on the other side of the satellite link. Substitute the sample IP addresses, host names, and other parameters for the appropriate values on the second router.
Verifying that the RBSCP Tunnel Is Active
Perform this task to verify that the RBSCP tunnel configured in the "Configuring the RBSCP Tunnel" task is active.
SUMMARY STEPS
1.
enable
2.
show rbscp [all | state | statistics] [tunnel tunnel-number]
DETAILED STEPS
Step 1
enable
Enables privileged EXEC mode. Enter your password if prompted.
Router> enableStep 2
show rbscp [all | state | statistics] [tunnel tunnel-number]
Use this command with the state and tunnel keywords to display information about the current state of the tunnel. In the following sample output the tunnel is shown in an open state.
Router# show rbscp state tunnel 1Tunnel1 is up, line protocol is upRBSCP operational state: OPENRBSCP operating mode: (264h) ack_split window_stuffing inorder SCTP_reportwindow step: 1drop scale : 0ACK split size: 4input drop scale: 2initial TSN: 1hfuzz factor: 0max burst: tunnel 0, network 0next TSN: 1hnext sequence: 16Bhcurrent outstanding: 0max out per RTT: 2062500packets since SACK: 0cumulative ack: 0hTSN at SACK: 0hlast cumulative ack: 0hlast delivered TSN: 0hnext FWDTSN corr: 0hRTO: 704 msRTT: 550 ms srtt_sa: 4391 srtt_sv: 3sentQ: num packets: 0, num bytes: 0tmitQ: num packets: 0, num bytes: 0Use this command with the statistics and tunnel keywords to display statistical information about the tunnel. All counters display totals accumulated since the last clear rbscp command was issued.
Router# show rbscp statistics tunnel 0Tunnel0 is up, line protocol is upRBSCP protocol statistics:Init FWD-TSNs sent 0, received 0TUNNEL-UPs sent 0, received 0CLOSEDs sent 0, received 0TSNs sent 0, resent 0, lost by sender 0TSNs received 0 (duplicates 0)FWD-TSNs sent 144 (heartbeats 0)FWD-TSNs received 0 (ignored 0)FWD-TSNs caused 0 packet drops, 0 whole window dropsSACKs sent 0, received 0 (ignored 0)Recovered with RTX 0Received with delay 0Most released at once 0Failed sends into the: tunnel 1, network 0Dropped due to: excess delay 0, tmit queue full 0Max on any queue: num packets: 0, num bytes: 0Max outstanding: 0
Verifying the RBSCP Traffic
Perform this task to verify that the traffic is being transmitted through the RBSCP tunnel and across the satellite link.
SUMMARY STEPS
1.
enable
2.
show interfaces tunnel number [accounting]
DETAILED STEPS
Step 1
enable
Enables privileged EXEC mode. Enter your password if prompted:
Router> enableStep 2
show interfaces tunnel number [accounting]
Use this command to show that traffic is being transmitted through the RBSCP tunnel:
Router# show interfaces tunnel 0Tunnel0 is up, line protocol is downHardware is TunnelInternet address is 172.17.1.4/24MTU 1514 bytes, BW 9 Kbit, DLY 500000 usec,reliability 255/255, txload 1/255, rxload 1/255Encapsulation TUNNEL, loopback not setKeepalive not setTunnel source 172.17.1.2, destination 172.20.1.3Tunnel protocol/transport RBSCP/IP, key disabled, sequencing disabledTunnel TTL 255Checksumming of packets disabledTunnel transmit bandwidth 1000 (kbps)Tunnel receive bandwidth 8000 (kbps)RBSCP operational state: invalid (0h)RBSCP operating mode: (2EEh) delay dual_delay drop_long_delay ack_split window_twindow step: 3drop scale : 0ACK split size: 6input drop scale: 5initial TSN: 1hfuzz factor: 0next TSN: 1hnext sequence: 1hcurrent outstanding: 0max out per RTT: 550000packets since SACK: 0cumulative ack: 0hTSN at SACK: 1hlast cumulative ack: 0hlast delivered TSN: 0hnext FWDTSN corr: 0hRTO: 704 msRTT: 550 ms srtt_sa: 0 srtt_sv: 4sentQ: num packets: 0, num bytes: 0tmitQ: num packets: 0, num bytes: 0Last input never, output never, output hang neverLast clearing of "show interface" counters neverInput queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0Queueing strategy: fifoOutput queue: 0/0 (size/max)5 minute input rate 0 bits/sec, 0 packets/sec5 minute output rate 0 bits/sec, 0 packets/sec0 packets input, 0 bytes, 0 no bufferReceived 0 broadcasts, 0 runts, 0 giants, 0 throttles0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort0 packets output, 0 bytes, 0 underruns0 output errors, 0 collisions, 0 interface resets0 output buffer failures, 0 output buffers swapped out
Configuration Examples for Rate Based Satellite Control Protocol
This section contains the following configuration examples:
•
Configuring the RBSCP Tunnel: Example
•
Configuring Routing for the RBSCP Tunnel: Example
Configuring the RBSCP Tunnel: Example
In the following example, Router 1 and Router 2 are configured to send traffic through an RBSCP tunnel over a satellite link.
Router 1
interface Tunnel 0ip unnumbered ethernet1tunnel source ethernet1tunnel destination 172.17.2.1tunnel bandwidth transmit 1000tunnel mode rbscptunnel rbscp ack_split 6tunnel rbscp report!interface ethernet1description Satellite Linkip address 172.20.1.2 255.255.255.0Router 2
interface Tunnel 0ip unnumbered ethernet1tunnel source ethernet1tunnel destination 172.20.1.2tunnel bandwidth transmit 1000tunnel mode rbscptunnel rbscp ack_split 6tunnel rbscp report!interface ethernet1description Satellite Linkip address 172.17.2.1 255.255.255.0Configuring Routing for the RBSCP Tunnel: Example
To control the type of traffic that uses the RBSCP tunnel, you must configure the appropriate routing. If you want to direct all traffic through the tunnel, you can configure a static route.
Note
Remember to configure the tunnel interface as passive if dynamic routing protocols are used to prevent routing flaps.
The following example shows how to use policy based routing to route some specific protocol types through the tunnel. In this example, an extended access list allows TCP, Stream Control Transmission Protocol (SCTP), Encapsulating Security Payload (ESP) protocol, and Authentication Header (AH) traffic to travel through the tunnel. All IP traffic is denied.
Router 1 (Local Side)
interface Tunnel1ip unnumbered FastEthernet1/1tunnel source FastEthernet1/1tunnel destination 10.12.0.20tunnel mode rbscptunnel ttl 5tunnel bandwidth transmit 30000tunnel rbscp window_stuff 1tunnel rbscp ack_split 4!interface FastEthernet0/0ip address 10.13.0.1 255.255.255.0ip policy route-map rbscp-pbrduplex autospeed auto!interface FastEthernet1/1description Satellite Linkip address 10.12.0.1 255.255.255.0duplex autospeed auto!ip route 10.15.0.0 255.255.255.0 FastEthernet1/1!ip access-list extended rbscp-aclpermit tcp any 10.15.0.0 0.0.0.255permit 132 any 10.15.0.0 0.0.0.255permit esp any 10.15.0.0 0.0.0.255permit ahp any 10.15.0.0 0.0.0.255deny ip any any!!route-map rbscp-pbr permit 10match ip address rbscp-aclset interface Tunnel1Router 2 (Remote Side)
ip dhcp pool CLIENTimport allnetwork 10.15.0.0 255.255.255.0default-router 10.15.0.1domain-name engineer.chicago.il.usdns-server 10.10.0.252!interface Tunnel1ip unnumbered FastEthernet0/1tunnel source FastEthernet0/1tunnel destination 10.12.0.1tunnel mode rbscptunnel ttl 5tunnel bandwidth transmit 30000tunnel rbscp window_stuff 1tunnel rbscp ack_split 4!interface FastEthernet0/0description Local LANip address 10.15.0.1 255.255.255.0ip policy route-map rbscp-pbrduplex autospeed auto!interface FastEthernet0/1description Satellite Linkip address 10.12.0.20 255.255.255.0duplex autospeed auto!ip route 0.0.0.0 0.0.0.0 FastEthernet0/1!ip access-list extended rbscp-aclpermit tcp any anypermit 132 any anypermit esp any anypermit ahp any anydeny ip any any!route-map rbscp-pbr permit 10match ip address rbscp-aclset interface Tunnel1Additional References
The following sections provide references related to Rate Based Satellite Control Protocol.
Related Documents
Related Topic Document TitleTunnel interface commands: complete command syntax, command mode, defaults, usage guidelines, and examples
Cisco IOS Interface and Hardware Component Command Reference, Release 12.3 T
Tunnel configuration
The chapter "Configuring Logical Interfaces" in the Cisco IOS Interface and Hardware Component Configuration Guide
Standards
Standards TitleNo new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.
—
MIBs
RFCs
RFCs TitleRFC 1323
TCP Extensions for High Performance
RFC 2018
TCP Selective Acknowledgment Options
Technical Assistance
Command Reference
This section documents new and modified commands only.
clear rbscp
To reset and restart a Rate Based Satellite Control Protocol (RBSCP) tunnel, use the clear rbscp command in privileged EXEC mode.
clear rbscp [tunnel tunnel-number]
Syntax Description
Command Modes
Privileged EXEC
Command History
Usage Guidelines
The clear rbscp command resets the tunnel interface to its initial state and this clears RBSCP statistical information. Use this command for troubleshooting issues with RBSCP tunnels.
Examples
The following example shows how to clear the RBSCP statistics. A show rbscp statistics command is issued first to display the current RBSCP counters for tunnel interface 0. The clear rbscp command is then entered to reset and restart tunnel interface 0. All the counters for tunnel interface 0 are reset to zero. A final show rbscp statistics command is issued to show that all the counters, except those counters that show the packets sent since the clearing, are reset to zero.
Router# show rbscp statistics tunnel 0Tunnel0 is up, line protocol is upRBSCP protocol statistics:Init FWD-TSNs sent 15, received 11TUNNEL-UPs sent 10, received 5CLOSEDs sent 3, received 2TSNs sent 40, resent 2, lost by sender 1TSNs received 36 (duplicates 2)FWD-TSNs sent 144 (heartbeats 2)FWD-TSNs received 120 (ignored 1)FWD-TSNs caused 3 packet drops, 0 whole window dropsSACKs sent 10, received 6 (ignored 1)Recovered with RTX 1Received with delay 2Most released at once 5Failed sends into the: tunnel 1, network 0Dropped due to: excess delay 0, tmit queue full 0Max on any queue: num packets: 12, num bytes: 0Max outstanding: 0Router# clear rbscp tunnel 0Tunnel0: cleared statisticsRouter# show rbscp statistics tunnel 0Tunnel0 is up, line protocol is upRBSCP protocol statistics:Init FWD-TSNs sent 0, received 0TUNNEL-UPs sent 0, received 0CLOSEDs sent 0, received 0TSNs sent 0, resent 0, lost by sender 0TSNs received 0 (duplicates 0)FWD-TSNs sent 26 (heartbeats 0)FWD-TSNs received 0 (ignored 0)FWD-TSNs caused 0 packet drops, 0 whole window dropsSACKs sent 0, received 0 (ignored 0)Recovered with RTX 0Received with delay 0Most released at once 0Failed sends into the: tunnel 0, network 0Dropped due to: excess delay 0, tmit queue full 0Max on any queue: num packets: 0, num bytes: 0Max outstanding: 0Related Commands
debug tunnel rbscp
To turn on the debugging output for Rate Based Satellite Control Protocol (RBSCP) tunnels, use the debug tunnel rbscp command in privileged EXEC mode. To turn off debugging output, use the no form of this command.
debug tunnel rbscp [ack_split | detail | msg | rto | state | window]
no debug tunnel rbscp [ack_split | detail | msg | rto | state | window]
Syntax Description
Command Modes
Privileged EXEC
Command History
Usage Guidelines
Use the debug tunnel rbscp command in privileged EXEC mode to troubleshoot RBSCP command operations.
CautionUse any debugging command with caution as the volume of output generated can slow or stop the router operations. We recommend that this command be used only under the supervision of a Cisco engineer.
Examples
The following example turns on debugging messages about RBSCP messages:
Router# debug tunnel rbscp msgTunnel RBSCP message debugging is onrouter#*Mar 1 05:36:01.435: handling FWD_TSN: sequence=20h, tsn=0h*Mar 1 05:36:03.371: rbscp_output_a_fwdtsn: tsn=0h, seq=Dh, for_hb=1*Mar 1 05:36:10.835: handling FWD_TSN: sequence=21h, tsn=0h*Mar 1 05:36:12.771: rbscp_output_a_fwdtsn: tsn=0h, seq=Eh, for_hb=1*Mar 1 05:36:20.235: handling FWD_TSN: sequence=22h, tsn=0h*Mar 1 05:36:22.171: rbscp_output_a_fwdtsn: tsn=0h, seq=Fh, for_hb=1
Note
Note that the debug output will vary depending on what the router is configured to do after the debug command is entered.
Table 1 describes the significant fields shown in the display.
The following example turns on debugging messages about RBSCP round-trip times and retransmission timeouts:
Router# debug tunnel rbscp rtoTunnel RBSCP RTT/RTO debugging is onrouter#*Mar 1 05:36:50.927: update_rtt: cur_rtt:549 ms:548 delay:0*Mar 1 05:36:50.927: New RTT est:549 RTO:703*Mar 1 05:37:00.327: update_rtt: cur_rtt:549 ms:548 delay:0*Mar 1 05:37:00.327: New RTT est:549 RTO:703*Mar 1 05:37:09.727: update_rtt: cur_rtt:549 ms:548 delay:0*Mar 1 05:37:09.727: New RTT est:549 RTO:703Table 2 describes the significant fields shown in the display.
show rbscp
To display state and statistical information about Rate Based Satellite Control Protocol (RBSCP) tunnels, use the show rbscp command in user EXEC or privileged EXEC mode.
show rbscp {all | state | statistics} [tunnel tunnel-number]
Syntax Description
Command Modes
User EXEC
Privileged EXECCommand History
Usage Guidelines
The output of this command is most helpful to the person who has the task of configuring and monitoring RBSCP tunnels. The output shows various state and statistical information about RBSCP tunnels.
Examples
The following is sample output from the show rbscp all command:
Router# show rbscp allTunnel0 is up, line protocol is upRBSCP operational state: IS OPENINGRBSCP operating mode: (264h) ack_split window_stuffing inorder SCTP_reportwindow step: 1drop scale : 0ACK split size: 4input drop scale: 2initial TSN: 1hfuzz factor: 0next TSN: 1hnext sequence: 1hcurrent outstanding: 0max out per RTT: 68750packets since SACK: 0cumulative ack: 0hTSN at SACK: 1hlast cumulative ack: 0hlast delivered TSN: 0hnext FWDTSN corr: 6hRTO: 704 msRTT: 550 ms srtt_sa: 0 srtt_sv: 4sentQ: num packets: 0, num bytes: 0tmitQ: num packets: 0, num bytes: 0RBSCP protocol statistics:Init FWD-TSNs sent 0, received 0TUNNEL-UPs sent 0, received 0CLOSEDs sent 0, received 0TSNs sent 0, resent 0, lost by sender 0TSNs received 0 (duplicates 0)FWD-TSNs sent 63 (heartbeats 0)FWD-TSNs received 0 (ignored 0)FWD-TSNs caused 0 packet drops, 0 whole window dropsSACKs sent 0, received 0 (ignored 0)Recovered with RTX 0Received with delay 0Most released at once 0Failed sends into the: tunnel 1, network 0Dropped due to: excess delay 0, tmit queue full 0Max on any queue: num packets: 0, num bytes: 0Max outstanding: 0Table 3 describes the significant fields shown in the display.
The following is sample output from the show rbscp state command:
Router# show rbscp stateTunnel0 is up, line protocol is upRBSCP operational state: IS OPENINGRBSCP operating mode: (264h) ack_split window_stuffing inorder SCTP_reportwindow step: 1drop scale : 0ACK split size: 4input drop scale: 2initial TSN: 1hfuzz factor: 0next TSN: 1hnext sequence: 1hcurrent outstanding: 0max out per RTT: 68750packets since SACK: 0cumulative ack: 0hTSN at SACK: 1hlast cumulative ack: 0hlast delivered TSN: 0hnext FWDTSN corr: 0hRTO: 704 msRTT: 550 ms srtt_sa: 0 srtt_sv: 4sentQ: num packets: 0, num bytes: 0tmitQ: num packets: 0, num bytes: 0The following is sample output from the show rbscp statistics command:
Router# show rbscp statistics tunnel 0Tunnel0 is up, line protocol is upRBSCP protocol statistics:Init FWD-TSNs sent 0, received 0TUNNEL-UPs sent 0, received 0CLOSEDs sent 0, received 0TSNs sent 0, resent 0, lost by sender 0TSNs received 0 (duplicates 0)FWD-TSNs sent 136 (heartbeats 0)FWD-TSNs received 0 (ignored 0)FWD-TSNs caused 0 packet drops, 0 whole window dropsSACKs sent 0, received 0 (ignored 0)Recovered with RTX 0Received with delay 0Most released at once 0Failed sends into the: tunnel 1, network 0Dropped due to: excess delay 0, tmit queue full 0Max on any queue: num packets: 0, num bytes: 0Max outstanding: 0Related Commands
tunnel bandwidth
To set the transmit bandwidth used by the tunnel interface, use the tunnel bandwidth command in interface configuration mode. To restore the default setting, use the no form of this command.
tunnel bandwidth {receive | transmit} bandwidth
no tunnel bandwidth
Syntax Description
Defaults
8000 kbps
Command Modes
Interface configuration
Command History
Usage Guidelines
Use the tunnel bandwidth command to specify the capacity of the satellite link.
Examples
The following example shows how to set the satellite tunnel bandwidth to 1000 kbps for transmitting packets using Rate Based Satellite Control Protocol:
Router(config)# interface tunnel 0Router(config-if)# tunnel bandwidth transmit 1000Related Commands
tunnel mode
To set the encapsulation mode for a tunnel interface, use the tunnel mode command in interface configuration mode. To restore the default mode, use the no form of this command.
tunnel mode {aurp | cayman | dvmrp | eon | gre | gre multipoint | ipip [decapsulate-any] | iptalk | mpls | nos | rbscp}
no tunnel mode
Syntax Description
Defaults
GRE tunneling
Command Modes
Interface configuration
Command History
Usage Guidelines
Source and Destination Address
You cannot have two tunnels that use the same encapsulation mode with exactly the same source and destination address. The workaround is to create a loopback interface and source packets off of the loopback interface.
Cayman Tunneling
Designed by Cayman Systems, Cayman tunneling implements tunneling to enable Cisco routers to interoperate with Cayman GatorBoxes. With Cayman tunneling, you can establish tunnels between two routers or between a Cisco router and a GatorBox. When using Cayman tunneling, you must not configure the tunnel with an AppleTalk network address.
DVMRP
Use DVMRP when a router connects to an mrouted router to run DVMRP over a tunnel. You must configure Protocol Independent Multicast (PIM) and an IP address on a DVMRP tunnel.
GRE with AppleTalk
GRE tunneling can be done between Cisco routers only. When using GRE tunneling for AppleTalk, you configure the tunnel with an AppleTalk network address. Using the AppleTalk network address you can ping the other end of the tunnel to check the connection.
Multipoint GRE
After enabling mGRE tunneling, you can enable the tunnel protection command, which allows you to associate the mGRE tunnel with an IP Security (IPSec) profile. Combining mGRE tunnels and IPSec encryption allows a single mGRE interface to support multiple IPSec tunnels, thereby simplifying the size and complexity of the configuration.
Note
GRE tunnel keepalives configured using the keepalive command under a GRE interface are
supported only on point-to-point GRE tunnels.RBSCP
RBSCP tunneling is designed for wireless or long-distance delay links with high error rates, such as satellite links. Using tunnels, RBSCP can improve the performance of certain IP protocols, such as TCP and IPSec, over satellite links without breaking the end-to-end model.
Examples
Cayman Tunneling
The following example shows how to enable Cayman tunneling:
Router(config)# interface tunnel 0Router(config-if)# tunnel source ethernet 0Router(config-if)# tunnel destination 10.108.164.19Router(config-if)# tunnel mode caymanGRE Tunneling
The following example shows how to enable GRE tunneling:
Router(config)# interface tunnel 0Router(config-if)# appletalk cable-range 4160-4160 4160.19Router(config-if)# appletalk zone EngineeringRouter(config-if)# tunnel source ethernet0Router(config-if)# tunnel destination 10.108.164.19Router(config-if)# tunnel mode greMultipoint GRE Tunneling
The following example shows how to enable mGRE tunneling:
interface Tunnel0bandwidth 1000ip address 10.0.0.1 255.255.255.0! Ensures that longer packets are fragmented before they are encrypted; otherwise, the ! receiving router would have to do the reassembly.ip mtu 1416! Turns off split horizon on the mGRE tunnel interface; otherwise, EIGRP will not ! advertise routes that are learned via the mGRE interface back out that interface.no ip split-horizon eigrp 1no ip next-hop-self eigrp 1delay 1000! Sets the IPSec peer address to the Ethernet interface's public address.tunnel source Ethernet0tunnel mode gre multipoint! The following line must match on all nodes that want to use this mGRE tunnel.tunnel key 100000tunnel protection ipsec profile vpnprofRBSCP Tunneling
The following example shows how to enable RBSCP tunneling:
Router(config)# interface tunnel 0Router(config-if)# tunnel source ethernet 0Router(config-if)# tunnel destination 10.108.164.19Router(config-if)# tunnel mode rbscpRelated Commands
tunnel rbscp ack_split
To enable TCP acknowledgement (ACK) splitting for Rate Based Satellite Control Protocol (RBSCP) tunnels, use the tunnel rbscp ack_split command in interface configuration mode. To disable TCP acknowledgement splitting for RBSCP tunnels, use the no form of this command.
tunnel rbscp ack_split split-size
no tunnel rbscp ack_split split-size
Syntax Description
Defaults
TCP acknowledgement splitting for RBSCP tunnels is disabled.
Command Modes
Interface configuration
Command History
Usage Guidelines
Performance improvements can be made for clear-text TCP traffic using ACK splitting where a number of additional TCP ACKs are generated for each TCP ACK received. TCP will open a congestion window by one maximum transmission unit (MTU) for each TCP ACK received. Opening the congestion window results in increased bandwidth becoming available. Use the tunnel rbscp ack_split command only when the satellite link is not using all the available bandwidth. Encrypted traffic cannot use ACK splitting.
Examples
The following example shows how to enable RBSCP tunnel TCP ACK splitting and configure three ACK packets to be sent for each ACK packet received:
Router(config)# interface tunnel 0Router(config-if)# tunnel rbscp ack_split 3Related Commands
tunnel rbscp delay
To enable the Rate Based Satellite Control Protocol (RBSCP) tunnel delay, use the tunnel rbscp delay command in interface configuration mode. To disable RBSCP tunnel delay, use the no form of this command.
tunnel rbscp delay
no tunnel rbscp delay
Syntax Description
This command has no arguments or keywords.
Defaults
RBSCP tunnel delay is disabled.
Command Modes
Interface configuration
Command History
Usage Guidelines
Use the tunnel rbscp delay command only if the RBSCP tunnel has a round-trip time (RTT) over 700 milliseconds.
Examples
The following example shows how to enable the RBSCP tunnel delay:
Router(config)# interface tunnel 0Router(config-if)# tunnel rbscp delayRelated Commands
tunnel rbscp input_drop
To configure the input queue size on a Rate Based Satellite Control Protocol (RBSCP) tunnel, use the tunnel rbscp input_drop command in interface configuration mode. To restore the default input queue size, use the no form of this command.
tunnel rbscp input_drop bw-delay-products
no tunnel rbscp input_drop
Syntax Description
bw-delay-products
Number of bandwidth delay products (BDP) bytes that can be queued before packets are dropped on the input side. Range from 1 to 10. Default is 2.
Defaults
Input queue size is 2 BDP bytes.
Command Modes
Interface configuration
Command History
Usage Guidelines
Use the tunnel rbscp input_drop command to restrict the amount of data queued by the router. After the configured byte limit is reached, packets that would be encapsulated and sent via the tunnel are dropped on the input side. Congestion control of the satellite link is also provided by this command because the dropped packets will force the end hosts to reduce their sending rate of packets.
Use this command in conjunction with the tunnel rbscp long_drop command which allows packets that are waiting in an RBSCP tunnel encapsulation queue to be dropped after a period of time.
Examples
The following example shows how to set the RBSCP tunnel queue size to 5 BDP bytes:
Router(config)# interface tunnel 0Router(config-if)# tunnel rbscp input_drop 5Related Commands
tunnel rbscp long_drop
To allow packets to be dropped that have been queued too long for Rate Based Satellite Control Protocol (RBSCP) tunnel encapsulation, use the tunnel rbscp long_drop command in interface configuration mode. To disable the dropping of queued packets, use the no form of this command.
tunnel rbscp long_drop
no tunnel rbscp long_drop
Syntax Description
This command has no arguments or keywords.
Defaults
No queued packets are dropped.
Command Modes
Interface configuration
Command History
Usage Guidelines
The tunnel rbscp long_drop command allows the transmitting router to drop packets that have been waiting in the queue for RBSCP tunnel encapsulation for a long time. The period of time after which packets are dropped is determined using the round-trip time (RTT) estimate of the tunnel.
Use this command in conjunction with the tunnel rbscp input_drop command which configures the size of the input queue. After the configured byte limit of the input queue is reached, packets are dropped.
Examples
The following example shows how to allow packets to be dropped when they have been queued for RBSCP tunnel encapsulation too long:
Router(config)# interface tunnel 0Router(config-if)# tunnel rbscp long_dropRelated Commands
Command Descriptionshow rbscp
Displays state and statistical information about RBSCP tunnels.
tunnel rbscp input_drop
Configures the input queue size on an RBSCP tunnel.
tunnel rbscp report
To report dropped Rate Based Satellite Control Protocol (RBSCP) packets to the Stream Control Transmission Protocol (SCTP), use the tunnel rbscp report command in interface configuration mode. To disable dropped-packet reporting to SCTP, use the no form of this command.
tunnel rbscp report
no tunnel rbscp report
Syntax Description
This command has no arguments or keywords.
Defaults
RBSCP dropped-packet reporting is enabled.
Command Modes
Interface configuration
Command History
Usage Guidelines
Use the tunnel rbscp report command to provide early reporting of dropped RBSCP packets to SCTP instead of attempting retransmission of the packets at the router. SCTP will inform the end hosts of the dropped packets and allow the end hosts to retransmit the packets. Reporting dropped packets through SCTP provides better throughput because the packet dropping is not assumed to be caused by congestion.
Examples
The following example shows how to disable the SCTP drop reporting (reporting is enabled by default):
Router(config)# interface tunnel 0Router(config-if)# no tunnel rbscp reportRelated Commands
tunnel rbscp window_stuff
To enable window stuffing by increasing the value of the window scale for Rate Based Satellite Control Protocol (RBSCP) tunnels, use the tunnel rbscp window_stuff command in interface configuration mode. To restore the default window scale value, use the no form of this command.
tunnel rbscp window_stuff step-size
no tunnel rbscp window_stuff
Syntax Description
Defaults
Window stuffing is disabled.
Command Modes
Interface configuration
Command History
Usage Guidelines
Use the tunnel rbscp window_stuff command to make the sending host believe that the receiving host has a larger window by artificially increasing the window size. RBSCP buffers the additional window and which be configured up to the satellite link bandwidth or the memory available on the router.
Note
Stream Control Transmission Protocol (SCTP) receive windows are scaled at two times the step-size argument value.
Note
The actual window size value that is used by the router may be smaller than the configured value because of the available bandwidth.
Examples
The following example shows how to enable window stuffing on the RBSCP tunnel and configure a window size of 2:
Router(config)# interface tunnel 0Router(config-if)# tunnel rbscp window_stuff 2Related Commands
Copyright © 2004 Cisco Systems, Inc. All rights reserved.





