Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
adding new address families (AF_xxx)
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  4 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Mark  
View profile  
 More options Nov 7 2012, 5:48 pm
Newsgroups: comp.unix.programmer, comp.os.linux.embedded
From: "Mark" <mark_cruzNOTFORS...@hotmail.com>
Date: Wed, 7 Nov 2012 17:48:29 -0500
Local: Wed, Nov 7 2012 5:48 pm
Subject: adding new address families (AF_xxx)
Hello,

I came across the kernel driver code implementing some sort of IGMP snooping
backend and as part of its functionalilty it creates a new socket address
family, AF_IGMPSNOOP, but actually implements just a few operations for this
type of socket:

static struct proto_ops igmp_snoop_ops = {
   family:       AF_IGMP_SNOOP,
   release:      _igmp_snoop_sock_release,
   bind:         sock_no_bind,
   connect:      sock_no_connect,
   socketpair:   sock_no_socketpair,
   accept:       sock_no_accept,
   getname:      sock_no_getname,
   poll:         datagram_poll,
   ioctl:        sock_no_ioctl,
   listen:       sock_no_listen,
   shutdown:     sock_no_shutdown,
   setsockopt:   _igmp_snoop_setsockopt,
   getsockopt:   sock_no_getsockopt,
   sendmsg:      _igmp_snoop_sock_sendmsg,
   recvmsg:      _igmp_snoop_sock_recvmsg,
   mmap:         sock_no_mmap,
   sendpage:     sock_no_sendpage,

}

However from a user space perspective a socket is created as:

fd = socket (AF_IGMPSNOOP, SOCK_RAW, IPPROTO_IGMP)

I'm wondering what is the rationale for adding a new family, while in fact a
raw socket is being used to access the stack for IGMP packets? Would not it
be the same to just create AF_INET raw socket and do the things?

Looking forward to hearing form you !
Thanks.

Mark


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Les Cargill  
View profile  
 More options Nov 7 2012, 11:50 pm
Newsgroups: comp.unix.programmer, comp.os.linux.embedded
From: Les Cargill <lcargil...@comcast.com>
Date: Wed, 07 Nov 2012 22:49:59 -0600
Local: Wed, Nov 7 2012 11:49 pm
Subject: Re: adding new address families (AF_xxx)

Possibly.

I'm pretty sure IGMP snooping is really a "bridge" thing.

http://www.linuxfoundation.org/collaborate/workgroups/networking/brid...

I don't know why you'd need a socket for bridge-based IGMP snooping
at all. Bridges don't need no steenking sockets.  This being said, this
is another one of those things...

( text from RFC 4541 ):
"   In recent years, a number of commercial vendors have introduced
    products described as "IGMP snooping switches" to the market.  These
    devices do not adhere to the conceptual model that provides the
    strict separation of functionality between different communications
    layers in the ISO model, and instead utilize information in the upper
    level protocol headers as factors to be considered in processing at
    the lower levels.  This is analogous to the manner in which a router
    can act as a firewall by looking into the transport protocol's header
    before allowing a packet to be forwarded to its destination address."

http://tools.ietf.org/html/rfc4541

So *sigh*.

> Looking forward to hearing form you !
> Thanks.

> Mark

--
Les Cargill

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mark  
View profile  
 More options Nov 8 2012, 8:11 am
Newsgroups: comp.unix.programmer, comp.os.linux.embedded
From: "Mark" <mark_cruzNOTFORS...@hotmail.com>
Date: Thu, 8 Nov 2012 08:11:28 -0500
Local: Thurs, Nov 8 2012 8:11 am
Subject: Re: adding new address families (AF_xxx)

"Les Cargill" <lcargil...@comcast.com> wrote in message

news:k7fdln$248$1@dont-email.me...

Thanks for the response.
Another thing that comes to my mind is that perhaps the implementor of
AF_IGMPSNOOP family wanted to have just a small subset of socket operations,
not a full-blown socket, basically only the 'release', 'poll', setsockopt,
sendmsg and recvmsg are implemented for this new family. May be they wanted
to have a light-weight mechanism.

Mark


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Les Cargill  
View profile  
 More options Nov 8 2012, 10:03 pm
Newsgroups: comp.unix.programmer, comp.os.linux.embedded
From: Les Cargill <lcargil...@comcast.com>
Date: Thu, 08 Nov 2012 21:03:36 -0600
Local: Thurs, Nov 8 2012 10:03 pm
Subject: Re: adding new address families (AF_xxx)

Dunno - find the appropriate mailing list and ask them. But yes - it
looks like only those callbacks are allowed.

--
Les Cargill


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »