← Back to team overview

rohc team mailing list archive

Support for ROHC/UDP and ROHC/Ethernet merged together (Was: Re: New IP/ROHC application! (Was: Re: Ethernet Transport app for ROHC pkts))

 

Raman,

> On Tue, 12 Mar 2013 14:07:04 +0100,
> Didier Barvaux <didier.barvaux@xxxxxxxxxxxxxxxxxxxx> wrote:
> 
> > >> Do you think it is worth adding it to the ROHC-over-UDP app in
> > >> ROHC
> > library?
> > Yes, I think it will give users different perspectives of ROHC
> > transport and applications. So shud be added as a separate app in
> > ROHC library but I am also fine adding it along with ROHC-over-UDP
> > app in ROHC library.
> > 
> > >> It might be added to the IP/ROHC application...
> > Since the scope, functionality of new IP/ROHC is diff and bigger
> > than any ROHC-over-X app so its correct place is original ROHC
> > library apps.
> 
> OK, but we need to merge the 2 small apps together in the ROHC library
> to ease maintenance. I'll look at the required work in the next few
> days.

After almost 3 months, I merged the ROHC-over-UDP tunnel and
ROHC-over-Ethernet tunnel applications [1].

I tested the 2 modes with a few ICMP messages, it seems to work as
expected. I would welcome your feedback on the app for your usage. You
can get the code on the main dev branch [2].

The way to call the program changed:

  ROHC tunnel: make a ROHC-over-UDP or ROHC-over-Ethernet tunnel

  usage:
    rohctunnel [ version | help ]
    rohctunnel TUNNEL [ ERROR ] [ DIR ]

  Tunnel parameters:
    TUNNEL := NAME TYPE PARAMS
    NAME   := STRING              The name of the tunnel
    TYPE   := { udp | ethernet }

  Tunnel parameters if TYPE = udp:
    PARAMS := remote RADDR local LADDR port PORT
    RADDR  := IPV4_ADDRESS      The IP address of the remote host
    LADDR  := IPV4_ADDRESS      The IP address of the local host
    PORT   := PORT              The UDP port to use (local and remote)

  Tunnel parameters if TYPE = ethernet:
    PARAMS := remote RADDR local ITF
    RADDR  := MAC_ADDRESS       The Ethernet MAC address of the remote host
    ITF    := STRING            The local interface to use, eg. eth0

  [...]

  Examples:
    # rohctunnel rohc0 udp remote 192.168.0.20 local 192.168.0.21 port 5000
    # rohctunnel rohc0 udp remote 192.168.0.20 local 192.168.0.21 port 5000 \
      dir unidirectional
    # rohctunnel rohc0 udp remote 192.168.0.20 local 192.168.0.21 port 5000 \
      error uniform 1e-5 dir bidirectional
    # rohctunnel rohc0 udp remote 192.168.0.20 local 192.168.0.21 port 5000 \
      error burst 1e-5 2e-5
    # rohctunnel rohc0 ethernet remote 01:02:03:04:05:06 local eth1
    # rohctunnel rohc0 ethernet remote 01:02:03:04:05:06 local eth1 \
      error burst 1e-5 2e-5

Regards,
Didier

[1] http://bazaar.launchpad.net/~didier-barvaux/rohc/main/revision/751
[2] http://rohc-lib.org/wiki/doku.php?id=library-hacking#get_source_code_with_bazaar

Attachment: signature.asc
Description: PGP signature


References