RE: Why do we have or should have keep-alive packets?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi All,

Oh, this is sort of the same issue I just raised in my last message.
Some comments inline...

Tom P.

-----Original Message-----
From: Gorry Fairhurst [mailto:gorry@xxxxxxxxxxxxxx] 
Sent: Tuesday, March 27, 2007 7:31 AM
To: Arjuna Sathiaseelan
Cc: dccp@xxxxxxxx
Subject: Re:  Why do we have or should have keep-alive packets?

Arjuna Sathiaseelan wrote:
> I have some doubts. 
> 
> The question is Who has control over Who? Does the application layer
control
> the transport protocol, or do transport protocols have their own
autonomy?
> 
> So if the application does'nt send any data, should the transport
protocol
> send keep alives by its own judgement or should the application
trigger the
> keep-alives? My belief was that application layer controls the
transport
> layer. I maybe wrong in my assumption.
> 
> I believe that there should be some sort of synchronization between
the
> three layers (application, transport and network) and send one
keep-alive
> rather than these layers sending their own keep-alives.
> 
> 
> Arjuna
> 
<snip>

Hmmm... I don't yet know.

I could suggest some models:

1) Application keep alives are "special" and handed to the API 
differently to data.
- Not sure I like this, should DCCP just view this as data?

[Tom P.] Yes, all application-level messages (including keep-alives)
should be data to DCCP.

2) Apps TELL DCCP to keep the "connection alive?" via an API.
DCCP agrees to send a packet on the "wire" if needed.
- Possible, providing apps do not need to exchange anything.

[Tom P.] Possible, but I think the same issues that stopped TCP from
supplying this (see Lars' previous message) apply here.

3) Apps ASK DCCP is the "connection alive?" via an API and DCCP replies,

possibly sending a packet on the "wire" if needed?
- Possible, providing apps do not need to exchange anything.

[Tom P.] I believe this capability exists -- send a DCCP-Sync packet.

4) Apps and DCCP do their own thing, and work independently.
- For apps that need to exchange something, but potentialluy ugly as you

suggest when two entities work un-coordinated.

[Tom P.] It seems to me that DCCP doesn't have a general need for
connection-level keep-alives -- there's just a possible CCID that has
that need.  So each layer doing its own thing doesn't seem so bad to me.

Gorry




[Index of Archives]     [Linux Kernel Development]     [Linux DCCP]     [IETF Annouce]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [DDR & Rambus]

  Powered by Linux