Re: TCP library

phil-news-nospam_at_ipal.net
Date: 08/20/03

  • Next message: Jitesh K Patil, Systems Engineer, Wipro Technologies.: "system hang if iopl called before getting pci access structure"
    Date: 20 Aug 2003 03:09:59 GMT
    
    

    On Tue, 19 Aug 2003 08:43:58 +0200 Kasper Dupont <kasperd@daimi.au.dk> wrote:

    |> is it possiple to change the TCP code (i.e init window) and link this to
    |> my program instead of the normal TCP code? I'm not sure cause TCP stuff
    |> belong to the kernel as far as I know. I use Linux RH7.2 and gcc 2.96.
    |
    | With root permissions it is possible to produce raw IP packets, and you
    | can also get the reply packets from the interface. But I would very much
    | advice against that approach. The TCP implementation belongs in the
    | kernel. When the kernel see the unexpected incomming packets, it is going
    | to break the connection with a TCP RST packet.
    |
    | So rather than trying to do anything like this in user mode, you should
    | use whatever options the kernel allow you to change, and otherwise add
    | the needed features to the kernel.

    Problems like the kernel doing TCP RST for you can be avoided by using an
    IP address the kernel will not recognize as belonging to the local stack.
    One way to do this would be to use the TUN/TAP device with your special IP
    address routed to it. Of course you do have to implement the whole TCP/IP
    stack (or at least as much of it you will use and need to react correctly
    on the network) in that userland code.

    -- 
    -----------------------------------------------------------------------------
    | Phil Howard KA9WGN       | http://linuxhomepage.com/      http://ham.org/ |
    | (first name) at ipal.net | http://phil.ipal.org/   http://ka9wgn.ham.org/ |
    -----------------------------------------------------------------------------
    

  • Next message: Jitesh K Patil, Systems Engineer, Wipro Technologies.: "system hang if iopl called before getting pci access structure"

    Relevant Pages

    • TOE brain dump
      ... (TCP Offload Engines). ... functionality in the main kernel, on a separate piece of hardware ... TOE will not be available to projects modifying the stack, ... tied to specific NICs (I've discussed some issues when ...
      (Linux-Kernel)
    • Re: How to tell if a firewall alert is suspicious or not
      ... > WHY this SBCGlobal DNS server would be contacting Adobe Acrobat on port ... They have to parts, a kernel and the userland, in which programs, which are ... With Internet Protocol and TCP it is so, that any network interface in the ... To initiate a TCP connection, first the server has to "listen" on a port. ...
      (comp.security.firewalls)
    • Re: silent semantic changes with reiser4
      ... > Several do TCP in user space. ... mis-behaving (and I'm not saying intentionally so: it might be a small bug ... They will ban an OS if it sends out packets ... that you have another protection domain (aka "kernel" or "TCP deamon") ...
      (Linux-Kernel)
    • Re: TCP library
      ... > my program instead of the normal TCP code? ... With root permissions it is possible to produce raw IP packets, ... When the kernel see the unexpected incomming packets, ...
      (comp.os.linux.development.system)
    • Re: cwnd and sstresh monitor
      ... (kernel patch, kernel module, etc?), and how would this be done best? ... but there is a TCPDEBUG kernel option that gathers TCP state information for debugging and tracing purposes. ... I also modified the iptimefunction to provide microsecond resolution instead of miliseconds, because most of the packets have the same timestamp attached. ...
      (freebsd-hackers)