Re: Reqst for Information: Loopback device programming

From: Kasper Dupont (kasperd_at_daimi.au.dk)
Date: 04/21/05

  • Next message: Kasper Dupont: "Re: Reqst for Information: Loopback device programming"
    Date: Thu, 21 Apr 2005 07:48:57 +0200
    
    

    "Peter T. Breuer" wrote:
    >
    > I don't particularly know why the actual network data
    > transmission is done in kernel space rather than userspace.

    Performance would be one possible reason. Unfortunately
    it looks like all the work is done in the context of a
    user process. So even though it happens in kernel mode,
    you don't get the performance benefit of lazy mm switching.

    Would be interesting to see if performance improvement
    could be achieved by daemonizing the process. I guess it
    is going to crash on return if you do that, so if it
    really makes a significant difference it should probably
    be done right by starting a new kernel thread.

    >
    > In this case "don't use a congested network and keep blocksize at 1K to
    > avoid tcp fragmentation" would work.

    Do you mean IP fragmentation or TCP segmentation?

    -- 
    Kasper Dupont
    

  • Next message: Kasper Dupont: "Re: Reqst for Information: Loopback device programming"

    Relevant Pages

    • Re: Communications kernel -> userland
      ... > form the kernel to the user process; ... > to the user process memory. ... > handle packets, perhaps ...
      (freebsd-hackers)
    • Re: Communications kernel -> userland
      ... Write directly to a file from the kernel. ... a file provided by an authorized user process. ... Expose it using a special socket type. ... a special-purpose system call or sysctl if you don't mind a lot of context ...
      (freebsd-hackers)
    • Re: Kernel mode programming
      ... >> there is a trap into the kernel, ... >> user process is saved ... > it is like calling another function within userspace. ... > If the syscall is interrupted, ...
      (freebsd-hackers)
    • Re: SCHED_FIFO and SCHED_RR broken by cfs
      ... SCHED_FIFO realtime scheduler. ... In my opinion a high priority real time user process with SCHED_FIFO ... should be only interrupted by the kernel or a process with an higher ...
      (Linux-Kernel)
    • Re: File access
      ... If you consider a kernel module which, in some event, ... chunk of data it needs to stall until the user process has finished. ... >> to pass the configuration to the driver. ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)