[Xorp-cvs] XORP cvs commit: xorp/fea

Pavlin Radoslavov pavlin@icir.org
Mon, 20 Mar 2006 07:29:45 GMT


CVSROOT:	/usr/local/share/doc/apache/cvs
Module name:	xorp
Changes by:	pavlin@xorpc.icir.org	2006-03-20 07:29:45 UTC

XORP CVS repository


Modified files:
	fea           mfea_proto_comm.cc mfea_proto_comm.hh rawsock.cc 
	              rawsock.hh 

Log message:
	* Add a mechanism to set the outgoing packets' IP header information
	  by using various socket options (as an alternative to the IP_HDRINCL
	  socket option) such as setsockopt(IP_TTL), etc.
	
	* Don't enable the IP_HDRINCL socket option for Linux and use the
	  new mechanism instead (see above).
	  The reason for this change is that in case of Linux the IP_HDRINCL
	  IP packets are not fragmented and are limited to the interface MTU.
	  The raw(7) Linux manual is wrong by saying it is a limitation only
	  in Linux 2.2. It is a limitation in 2.4 and 2.6, and there is no
	  indication this is going to be fixed in the future.
	
	  This fix allows the protocols to transmit IP messages that are
	  up to 64K bytes long (minus headers overhead) without having to
	  perform protocol-level fragmentation at the MTU size limit.
	  Increasing the message size limit to 64K bytes is important for
	  protocols like PIM-SM which may have to include a large number
	  of Join/Prune items within a single PIM message.

Revision  Changes                                  Path
1.50      +126 -31;  commitid: 179ea441e55a57ea6;  xorp/fea/mfea_proto_comm.cc
1.20      +14 -11;  commitid: 179ea441e55a57ea6;   xorp/fea/mfea_proto_comm.hh
1.19      +125 -33;  commitid: 179ea441e55a57ea6;  xorp/fea/rawsock.cc
1.7       +4 -3;  commitid: 179ea441e55a57ea6;     xorp/fea/rawsock.hh