[Olsr-users] 3 PCs setup for OLSR

(spam-protected) (spam-protected)
Wed Sep 16 08:58:34 CEST 2009


Hi Markus,
Thnaks to you for helping me to reach at this stage but I have few
problems still.
I have the same 3 PC setup olsrd running on each machine
PC1-0.105.12.200<-------->0.105.12.201:(eth0)-PC2-(eth1):0.105.10.202<--
--------->10.105.10.203:-PC3.
On PC1, I am running VLC in RTP-UDP video streaming mode with streaming
IP as 10.105.10.203 and port 1234 for PC3. So in turn I am able to see
the live video on PC3 which is coming from PC1 via PC2.
  
Now If I stop the olsrd on PC1 (the same case for PC2/PC3 also but just
take example to stop at PC1), It immediatly update the routing table
(see the below attached output) to default but the Video stream takes
3-4 minutes time to stop the running streamed video at PC3. and after
stopping the streamed video if again we start the olsrd again at PC1
(which we stopped 3-4 minutes back), its gaian takes 3-4 minutes to
restart it again.

What parameter in configuration or other setting I am missing?? What
should I do to reduce the switching time as much as minimum as possible 

------------------------------------------------------------------------
--
Please find the below proposed schemes of experiment after it is up for
3 PC setup. PC1 will stream the video to PC3.

         Normal communication from PC1 to PC3 via PC2 (PC1->PC2->PC3)
         ----------------------->
         PC1--------PC2------PC3
          |          |     /    \
          |          |   /     /
          |          | /      /
          |         /|       /
          |       /  |      /
          |     /    |     /
          |   /      |    /
          | /        |   /
         PC5---------PC4/
and in case of PC2 node faliure the path is changed to PC1 t0 PC3 via
PC5 (now changed to PC1->PC5->PC3)
------------------------------------------------------------------------
---------------------------------


Please find the below output of #ip route command and olsr.conf file.

******************** ip route connad output when olsrd
running*******************
(spam-protected) ~]$ ip route
10.105.12.201 dev eth0 scope link metric 2 
10.105.10.203 via 10.105.12.201 dev eth0 metric 2 
10.105.10.202 via 10.105.12.201 dev eth0 metric 2 
10.105.12.0/24 dev eth0 proto kernel scope link src 10.105.12.200 metric
1 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 
default via 10.105.12.1 dev eth0 proto static 
******************* ip route connad output when olsrd
stopped********************
(spam-protected) ~]$ ip route
10.105.12.0/24 dev eth0 proto kernel scope link src 10.105.12.200 metric
1 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 
default via 10.105.12.1 dev eth0 proto static 
************************************************************************
**********


********************************when stopping the olsrd using
Ctrl^C***************
-- 11:40:41.889878 ----------------------------------------------------
LINKS

IP address       hyst         LQ       ETX
10.105.12.201    0.000  0.988/0.988    1.024

--- 11:40:41.889941 ----------------------- TWO-HOP NEIGHBORS

IP addr (2-hop)  IP addr (1-hop)  Total cost
10.105.10.203    10.105.12.201    2.048

--- 11:40:41.889966 -------------------------------------------------
TOPOLOGY

Source IP addr  Dest IP addr          LQ        ETX
10.105.12.200   10.105.12.201   0.988/0.988    1.024
10.105.12.201   10.105.12.200   0.988/0.988    1.024
10.105.12.201   10.105.10.203   0.988/0.988    1.024
10.105.10.203   10.105.12.201   0.988/0.988    1.024
^CReceived signal 2 - shutting down
Deleting all routes...
Closing sockets...
Shutting down IPC...
Closing plugins...
Restoring network state

 <<<< olsr.org - 0.5.6-r5 - terminating >>>>
           http://www.olsr.org
[(spam-protected) olsr]# 
************************************************************************
************

********************************olsrd.conf file used on all PC-1, PC2,
PC3***************
#
# OLSR.org routing daemon config file
#
# Lines starting with a # are discarded
#

# Debug level(0-9)
# If set to 0 the daemon runs in the background

DebugLevel	1

# IP version to use (4 or 6)

IpVersion	4

# FIBMetric ("flat", "correct", or "approx")
# Just use "flat", the others don't work very well

FIBMetric "flat"

# Clear the screen each time the internal state changes

# ClearScreen     yes

# HNA IPv4 routes
# syntax: netaddr netmask
# Example Internet gateway:
# 0.0.0.0 0.0.0.0

Hna4
{
# Internet gateway
#    0.0.0.0   0.0.0.0

# specific small networks reachable through this node
    #10.105.0.0 255.255.255.0
#    15.16.0.0 255.255.255.0
}

# HNA IPv6 routes
# syntax: netaddr prefix
# Example Internet gateway:
#Hna6
#{
# Internet gateway
#     ::              0

# specific small networks reachable through this node
#    fec0:2200:106:0:0:0:0:0 48
#}

# Specify the routing Table olsr uses
# currently only implemented in linux versions, (bsd planned)
# useful for policyrouting, to ensure that olsr can use 
# the table a policy rule with priority 65536 is auto-installed
# by olsrd if an value < 253 ist specified!
# value defaults to 253 (main table)
# valid values are 1 .. 254
# (freifunkfirmware uses 111 for its policy routing)

## RtTable 111

#you may specify another table for the default route only
#if used no policy route will get auto-installed for this table, 
#but the default route gets also inserted into table 254 
#(the last table used in default linux policy routing)
#valid tables are the same as for RtTable

## RtTableDefault 112

# Specify the proto tag to be used for routes olsr inserts into kernel
# currently only implemented for linux, defaults to 0 which gets
replaced
# by an OS-specific default value under linux 3 (BOOT) gets used as
default
# (for backward compatibility)
# valid values under linux are 1 .. 254
# 1 gets remapped by olsrd to 0 UNSPECIFIED (1 is reserved for ICMP
redirects)
# 2 KERNEL routes (not very wise to use)
# 3 BOOT (should in fact not be used by routing daemons)
# 4 STATIC 
# 8 .. 15 various routing daemons (gated, zebra, bird, & co)

## RtProto 111

# For testing purposes it may be nice to use another port for olsrd
# for using another port than the IANA assigned one 
# for a production network, there should be a good reason!!
# defaults to 698 (IANA assigned olsr-port)
# valid values are 698 or > 1000

 OlsrPort 698

# Should olsrd keep on running even if there are
# no interfaces available? This is a good idea
# for a PCMCIA/USB hotswap environment.
# "yes" OR "no"

AllowNoInt	yes

# TOS(type of service) value for
# the IP header of control traffic.
# If not set it will default to 16

TosValue	16

# The fixed willingness to use(0-7)
# If not set willingness will be calculated
# dynammically based on battery/power status

#Willingness    	3

# Allow processes like the GUI front-end
# to connect to the daemon.

IpcConnect
{
     # Determines how many simultaneously
     # IPC connections that will be allowed
     # Setting this to 0 disables IPC

     MaxConnections  5

     # By default only 127.0.0.1 is allowed
     # to connect. Here allowed hosts can
     # be added

     Host            127.0.0.1
     Host            10.105.12.200 
     Host            10.105.12.201 
     Host            10.105.10.202 
     Host            10.105.10.203 
     # Host            10.0.0.5

     # Specify entire net-ranges that are 
     # allowed to connect

     Net             10.0.0.0 255.255.255.0     
}

# Link quality level
# 0 = do not use link quality
# 1 = use link quality for MPR selection
# 2 = use link quality for MPR selection and routing
# Defaults to 2

#LinkQualityLevel	2

# Link quality algorithm (only for lq level 1 or 2)
# Defaults to "etx_fpm" for fixpoint based etx algorithm

# LinkQualityAlgorithm    "etx_fpm"

# Link quality aging factor
# Defaults to 0.05, smaller values mean larger LQ window size
# Link quality aging does only apply to lq level 1 and 2

# LinkQualityAging 0.1 

# Fisheye mechanism for TC messages 0=off, 1=on
# default is 0

# LinkQualityFishEye	0

# Wether to use hysteresis or not
# Hysteresis adds more robustness to the
# link sensing but delays neighbor registration.
# Used by default. 'yes' or 'no'

UseHysteresis	no

# Hysteresis parameters
# Do not alter these unless you know 
# what you are doing!
# Set to auto by default. Allowed
# values are floating point values
# in the interval 0,1
# THR_LOW must always be lower than
# THR_HIGH!!

#HystScaling	0.50
#HystThrHigh	0.80
#HystThrLow	0.30


# Polling rate in seconds(float). 
# Default value 0.05 sec

 Pollrate	0.05

# Interval to poll network interfaces for configuration 
# changes. Defaults to 2.5 seconds

NicChgsPollInt  3.0


# TC redundancy
# Specifies how much neighbor info should
# be sent in TC messages
# Possible values are:
# 0 - only send MPR selectors
# 1 - send MPR selectors and MPRs
# 2 - send all neighbors
#
# defaults to 0

##TcRedundancy	2

#
# NatThreshold 
#
# (currently this is only in the freifunk firmware)
# If the NAT-Endpoint (the preferred 0/0 HNA 
# emitting node) is to be changed, the ETX value of the current 0/0 is 
# compared to the new one. If the ETX difference is too small, the
default 
# route isn't changed. defaults to 1.0
# The configured route gets multiplied by the treshhold, 
# before comparing which route is better

# NatThreshold  0.9

#
# MPR coverage
# Specifies how many MPRs a node should
# try select to reach every 2 hop neighbor
#
# Can be set to any integer >0
#
# defaults to 1

MprCoverage	1


# Olsrd plugins to load
# This must be the absolute path to the file
# or the loader will use the following scheme:
# - Try the paths in the LD_LIBRARY_PATH 
#   environment variable.
# - The list of libraries cached in /etc/ld.so.cache
# - /lib, followed by /usr/lib
#
# the examples in this list are for linux, so check if the plugin is
# available if you use windows/BSD.

############## vijai #############
##LoadPlugin "olsrd_bmf.so.1.5.3"
##{
 # No PlParam entries required for basic operation
##}
##LoadPlugin "olsrd_arprefresh.so.0.1"
##{
##}
LoadPlugin "olsrd_dot_draw.so.0.3"
{
  PlParam     "port" "2004"
  PlParam     "Accept"   "127.0.0.1"
  PlParam     "allow"   "localhost"
}

##################################



# LoadPlugin "olsrd_httpinfo.dll"
LoadPlugin "olsrd_httpinfo.so.0.1"
{
    # port number the txtinfo plugin will be listening
    PlParam     "port"   "1978"
    
    # ip address that can access the plugin, use "0.0.0.0"
    # to allow everyone
    PlParam     "Host"   "127.0.0.1"
#   PlParam     "Host"   "80.23.53.22"
    
    # networks that can access the plugin (ip/netmask)
    PlParam     "Net"    "0.0.0.0 0.0.0.0"
#   PlParam     "Net"    "192.168.0.0 255.255.0.0"
}

# LoadPlugin "olsrd_txtinfo.dll"
LoadPlugin "olsrd_txtinfo.so.0.1"
{
    # port number the txtinfo plugin will be listening
    PlParam     "port"   "81"
    # ip address that can access the plugin, use "0.0.0.0"
    # to allow everyone
    PlParam     "Accept"   "127.0.0.1"
}

#LoadPlugin "olsrd_secure.so.0.3"
#{
    # define source of keyfile for secure plugin
    # see lib/secure/README_SECURE for more information
    
#   PlParam     "Keyfile"   "/etc/olsr-keyfile.txt"
#}

#LoadPlugin "olsrd_dyn_gw.so.0.1"
#{
    # Here parameters are set to be sent to the
    # plugin. Theese are on the form "key" "value".
    # Parameters ofcause, differs from plugin to plugin.
    # Consult the documentation of your plugin for details.

    # Example: dyn_gw params

    # how often to check for Internet connectivity
    # defaults to 5 secs
#   PlParam     "Interval"   "40"
    
    # if one or more IPv4 addresses are given, do a ping on these in
    # descending order to validate that there is not only an entry in
    # routing table, but also a real internet connection. If any of
    # these addresses could be pinged successfully, the test was
    # succesful, i.e. if the ping on the 1st address was successful,the
    # 2nd won't be pinged
#   PlParam     "Ping"       "141.1.1.1"
#   PlParam     "Ping"       "194.25.2.129"
#}

# olsrd_dyn_gw_plain.so.0.4
# {
# }


# Interfaces and their rules
# Omitted options will be set to the
# default values.
# multiple interfaces can be speicified
Interface "eth0" "ath0"
{

    # IPv4 broadcast address to use. The
    # one usefull example would be 255.255.255.255
    # If not defined the broadcastaddress
    # every card is configured with is used
    # The second useful value would be to
    # specify the peer adress of an ptp-tunnel
 
    # Ip4Broadcast      255.255.255.0

    # Interface Mode is used to prevent unnecessary
    # packet forwarding on switched ethernet interfaces
    # valid Modes are "mesh" and "ether"
    # The default value is mesh!

    # Mode "mesh"

    # IPv6 address scope to use.
    # Must be 'site-local' or 'global'

    # Ip6AddrType		site-local

    # IPv6 multicast address to use when
    # using site-local addresses.
    # If not defined, ff05::15 is used

    # Ip6MulticastSite	ff05::11

    # IPv6 multicast address to use when
    # using global addresses
    # If not defined, ff0e::1 is used

    # Ip6MulticastGlobal	ff0e::1


    # Emission intervals.
    # If not defined, RFC proposed values will
    # be used in most cases.

    # Hello interval in seconds(float)
     HelloInterval    1.0

    # HELLO validity time
     HelloValidityTime	3.0

    # TC interval in seconds(float)
     TcInterval        5.0

    # TC validity time
     TcValidityTime	15.0

    # MID interval in seconds(float)
     MidInterval	5.0

    # MID validity time
     MidValidityTime	15.0

    # HNA interval in seconds(float)
    ## HnaInterval	15.0

    # HNA validity time
    # HnaValidityTime 	30.0
    
    # When multiple links exist between hosts
    # the weight of interface is used to determine
    # the link to use. Normally the weight is
    # automatically calculated by olsrd based
    # on the characteristics of the interface,
    # but here you can specify a fixed value.
    # Olsrd will choose links with the lowest value.
    # Note:
    # Interface weight is used only when LinkQualityLevel is set to 0.
    # For any other value of LinkQualityLevel, the interface ETX
    # value is used instead.
    # Weight 0


    # If a certain route should be preferred 
    # or ignored by the mesh, the Link Quality 
    # value of a node can be multiplied with a factor 
    # entered here. In the example the route 
    # using 192.168.0.1 would rather be ignored.
    # A multiplier of 0.5 will result in a small
    # (bad) LinkQuality value and a high (bad)
    # ETX value.
    # Note:
    # Link quality multiplier is used only when
    # LinkQualityLevel is > 0.

    # LinkQualityMult 192.168.0.1 0.5

    # This multiplier applies to all other nodes 
    # LinkQualityMult default 0.8
}

# another Interface (with different configs)
##Interface "eth1"
##{
    # IPv4 broadcast address to use. 
    # One usefull example would be 255.255.255.255
    # If not defined the broadcastaddress of
    # every interface which has one configured gets used
    # The second useful value would be to 
    # specify the peer adress of an ptp-tunnel

 ##   Ip4Broadcast	192.168.255.255

    # Interface Mode is used to prevent unnecessary
    # packet forwardin on switched ethernet interfaces
    # valid Modes are "mesh" and "ether"
    # The default value is mesh!

##    Mode "ether"
##}
************************************************************************
***


________________________________

From: (spam-protected)
[mailto:(spam-protected)] On Behalf Of Markus Kittenberger
Sent: Tuesday, September 08, 2009 6:01 PM
To: Vijai Kumar (WT01 - Joint CEO Office)
Cc: (spam-protected)
Subject: Re: [Olsr-users] 3 PCs setup for OLSR




On Tue, Sep 8, 2009 at 8:42 AM, <(spam-protected)> wrote:


	Hi Markus,
	  thanks Markus.....:)
	

thanks for the feedback *G 

	  You were right as I was getting some other outputs in #ip rule
	command as I was having some force entries for routing table
select.
	

 you can also change them, so that the table olsrd uses gets used fo
this parts of your routing you want him to get used for *G

	  I changed the olsrd/conf file and commented the RtTable
entries to
	select kernel default table by olsrd.
	  Now in setup PC1<-------->(eth0)PC2(eth1)<----------->PC3, We
are
	able to ping PC1 frpm PC3 and vice-versa.
	  Now I have to run a vedio streaming from PC1 to PC3. Do you
have any
	idea to do it? 

use any software you like,.. 
.

or the maybe easiest solution:
attach an ip webcam (with its own http server) on one olsr node, and
announce the ip of the webcam via hna (olsr config-option) to the other
nodes
Markus

	Vijai
	
	
	-----Original Message-----
	From: Markus Kittenberger [mailto:(spam-protected)]
On
	Behalf Of Markus Kittenberger
	
	Sent: Monday, August 24, 2009 6:12 PM
	To: Vijai Kumar (WT01 - Joint CEO Office)
	
	Subject: Re: [Olsr-users] 3 PCs setup for OLSR
	
	Am 24.08.2009, 14:05 Uhr, schrieb <(spam-protected)>:
	
	> Thanks again Markus for help.
	> I tried your suggestions ann now I am able to ping pc1 and pc2
from
	pc2.
	> but even after running I am not able to ping PC1 from PC3 and
	> vice-versa.
	> I have the setup as follows with bmf plugin running with
olsrd. I
	> disabled the firewall at all the PCs.I attached the below
output from
	> olsrd.
	>
	> I hope to get any clue from you...:)
	>
	> PC1<-------->(eth0)PC2(eth1)<----------->PC3
	>
	> PC1:Eth0:
	> IP Address: 10.105.12.200
	> Bcast Address: 10.105.12.255
	> Subnet mask: 255.255.255.0
	> Def Gateway: 10.105.12.1
	> Default route: 10.105.12.1
	> Primary DNS: 10.105.51.100
	> Primary DNS: 10.105.50.100
	>
	> PC2:Eth0:
	> IP Address: 10.105.12.201
	> Bcast Address: 10.105.12.255
	> Subnet mask: 255.255.255.0
	> Def Gateway: 10.105.12.1
	> Default route: 10.105.12.1
	> Primary DNS: 10.105.51.100
	> Primary DNS: 10.105.50.100
	>
	> Other subnet:
	> PC2:Eth1:
	> IP Address: 10.105.10.202
	> Bcast Address: 10.105.10.255
	> Subnet mask: 255.255.255.0
	> Def Gateway: 10.105.12.1
	> Default route: 10.105.12.1
	> Primary DNS: 10.105.51.100
	> Primary DNS: 10.105.50.100
	>
	> PC3:Eth0:
	> IP Address: 10.105.10.203
	> Bcast Address: 10.105.10.255
	> Subnet mask: 255.255.255.0
	> Def Gateway: 10.105.12.1
	> Default route: 10.105.12.1
	> Primary DNS: 10.105.51.100
	> Primary DNS: 10.105.50.100
	>
	> While I ping PC1 from PC3 I am getting the follwing message in
	> wireshark at PC1----
	> Source: 10.105.10.203 Dest: 10.105.10.200, protocol: ICMP,
msg: Echo
	> (ping) request.
	> Source: MAC address of PC3  Dest: broadcast, protocol: ARP,
msg: who
	> has 10.105.12.1? Tell 10.105.10.200
	
	this means that pc3 searches for its (possible wrong) Default
gateway
	which it only does if there no olsr routes which mach better
than the
	default route
	
	> The same message is displayed in wireshark at PC2:eth0
interface
	>
	> The fillowings are the output of olsrd at 3 PCs--->
	>
	> Setup:
	>
PC1:0.105.12.200<-------->0.105.12.201:(eth0)PC2(eth1):0.105.10.202<--
	> --
	> ------->10.105.10.203:PC3
	> ############################ PC1 OLSR out put
	> #######################################################
	> --- 15:58:18.761360
	> ----------------------------------------------------
	> LINKS
	>
	> IP address       hyst         LQ       ETX
	> 10.105.12.201    0.000  0.988/0.988    1.024
	>
	> --- 15:58:18.761408 ----------------------- TWO-HOP NEIGHBORS
	>
	> IP addr (2-hop)  IP addr (1-hop)  Total cost
	> 10.105.10.203    10.105.12.201    2.048
	>
	> --- 15:58:18.761445
-------------------------------------------------
	> TOPOLOGY
	>
	> Source IP addr  Dest IP addr          LQ        ETX
	> 10.105.12.200   10.105.12.201   0.988/0.988    1.024
	> 10.105.12.201   10.105.12.200   0.988/0.988    1.024
	> 10.105.12.201   10.105.10.203   0.988/0.988    1.024
	> 10.105.10.203   10.105.12.201   0.988/0.988    1.024
	>
######################################################################
	> ##
	> ###############################
	>
	>
PC1:0.105.12.200<-------->0.105.12.201:(eth0)PC2(eth1):0.105.10.202<--
	> --
	> ------->10.105.10.203:PC3
	> ############################ PC2 OLSR out put
	> ###########################################################
	> --- 15:58:46.944567
	> ----------------------------------------------------
	> LINKS
	>
	> IP address       hyst         LQ       ETX
	> 10.105.10.203    0.000  0.988/0.988    1.024
	> 10.105.12.200    0.000  0.988/0.988    1.024
	>
	> --- 15:58:46.944622 ----------------------- TWO-HOP NEIGHBORS
	>
	> IP addr (2-hop)  IP addr (1-hop)  Total cost
	>
	> --- 15:58:46.944641
-------------------------------------------------
	> TOPOLOGY
	>
	> Source IP addr  Dest IP addr          LQ        ETX
	> 10.105.12.200   10.105.12.201   0.988/0.988    1.024
	> 10.105.12.201   10.105.12.200   0.988/0.988    1.024
	> 10.105.12.201   10.105.10.203   0.988/0.988    1.024
	> 10.105.10.203   10.105.12.201   0.988/0.988    1.024
	looks correct, but as it doens`t work,...
	
	check (for exampl eon pc3) what
	#ip route
	(should contain routes to the other olsr routers) and #ip rule
(should
	be only 3 lines) print out
	
	
	and pls leave the bmf plugin away (at least for the moment)
	
	
	if ip route doen`s print the expected routes configure httpinfo
(or
	txtinfo), and check there if the links get symmetric, and if the
olsr
	wants to create routes (i mean if it list routes there)
	
	lg Markus
	
	
	Please do not print this email unless it is absolutely
necessary.
	
	The information contained in this electronic message and any
attachments to this message are intended for the exclusive use of the
addressee(s) and may contain proprietary, confidential or privileged
information. If you are not the intended recipient, you should not
disseminate, distribute or copy this e-mail. Please notify the sender
immediately and destroy all copies of this message and any attachments.
	
	WARNING: Computer viruses can be transmitted via email. The
recipient should check this email and any attachments for the presence
of viruses. The company accepts no liability for any damage caused by
any virus transmitted by this email.
	
	www.wipro.com
	
	



Please do not print this email unless it is absolutely necessary. 

The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments. 

WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. 

www.wipro.com




More information about the Olsr-users mailing list