亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ns-node.tcl

?? 在Linux下做的QuadTree的程序
?? TCL
字號:
## Copyright (c) 1996 Regents of the University of California.# All rights reserved.# # Redistribution and use in source and binary forms, with or without# modification, are permitted provided that the following conditions# are met:# 1. Redistributions of source code must retain the above copyright#    notice, this list of conditions and the following disclaimer.# 2. Redistributions in binary form must reproduce the above copyright#    notice, this list of conditions and the following disclaimer in the#    documentation and/or other materials provided with the distribution.# 3. All advertising materials mentioning features or use of this software#    must display the following acknowledgement:# 	This product includes software developed by the MASH Research# 	Group at the University of California Berkeley.# 4. Neither the name of the University nor of the Research Group may be#    used to endorse or promote products derived from this software without#    specific prior written permission.# # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE# ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF# SUCH DAMAGE.## @(#) $Header: /home/am6/jinyang/cvs/our-ns/tcl/lib/ns-node.tcl,v 1.1.1.1 2000/08/28 18:40:39 jinyang Exp $#Class NodeNode set nn_ 0Node proc getid {} {	set id [Node set nn_]	Node set nn_ [expr $id + 1]	return $id}Node instproc init args {	eval $self next $args	$self instvar np_ id_ classifier_ agents_ dmux_ neighbor_	set neighbor_ ""	set agents_ ""	set dmux_ ""	set np_ 0	set id_ [Node getid]	set classifier_ [new Classifier/Addr]	# set up classifer as a router (i.e., 24 bit of addr and 8 bit port)	$classifier_ set mask_ 0xffffff	$classifier_ set shift_ 8}Node instproc enable-mcast sim {        $self instvar classifier_ multiclassifier_ ns_ switch_ mcastproto_	$self set ns_ $sim	$self set switch_ [new Classifier/Addr]        #	# set up switch to route unicast packet to slot 0 and	# multicast packets to slot 1	#	[$self set switch_] set mask_ 1	[$self set switch_] set shift_ [Simulator set McastShift_]	#	# create a classifier for multicast routing	#	$self set multiclassifier_ [new Classifier/Multicast/Replicator]	[$self set multiclassifier_] set node_ $self	[$self set switch_] install 0 $classifier_	[$self set switch_] install 1 $multiclassifier_	#	# Create a prune agent.  Each multicast routing node	# has a private prune agent that sends and receives	# prune/graft messages and dispatches them to the	# appropriate replicator object.	#        $self set mcastproto_ [new McastProtoArbiter ""]	$mcastproto_ set Node $self}Node instproc add-neighbor p {	$self instvar neighbor_	lappend neighbor_ $p}Node instproc entry {} {        if [Simulator set EnableMcast_] {	    $self instvar switch_	    return $switch_	}	$self instvar classifier_	return $classifier_}Node instproc add-route { dst target } {	$self instvar classifier_	$classifier_ install $dst $target}Node instproc id {} {	$self instvar id_	return $id_}Node instproc alloc-port {} {	$self instvar np_	set p $np_	incr np_	return $p}## Attach an agent to a node.  Pick a port and# bind the agent to the port number.#Node instproc attach agent {	$self instvar agents_ classifier_ id_ dmux_	#	# assign port number (i.e., this agent receives	# traffic addressed to this host and port)	#	lappend agents_ $agent	set port [$self alloc-port]	$agent set portID_ $port	#	# Attach agents to this node (i.e., the classifier inside).	# We call the entry method on ourself to find the front door	# (e.g., for multicast the first object is not the unicast	#  classifier)	# Also, stash the node in the agent and set the	# local addr of this agent.	#	$agent target [$self entry]	$agent set node_ $self	$agent set addr_ [expr $id_ << 8 | $port]	#	# If a port demuxer doesn't exist, create it.	#	if { $dmux_ == "" } {		set dmux_ [new Classifier/Addr]		$dmux_ set mask_ 0xff		$dmux_ set shift_ 0		#		# point the node's routing entry to itself		# at the port demuxer (if there is one)		#		$self add-route $id_ $dmux_	}	$dmux_ install $port $agent	#	# add trace into attached agent	#	set ns [Simulator instance]	set trace [$ns get-nam-traceall]	if {$trace != ""} {		$agent attach-trace $trace	}}## Detach an agent from a node.#Node instproc detach { agent nullagent } {	$self instvar agents_ dmux_	#	# remove agent from list	#	set k [lsearch -exact $agents_ $agent]	if { $k >= 0 } {		set agents_ [lreplace $agents_ $k $k]	}	#	# sanity -- clear out any potential linkage	#	$agent set node_ ""	$agent set addr_ 0	$agent target $nullagent	set port [$agent set portID_]	$dmux_ install $port $nullagent}Node instproc agent port {        $self instvar agents_        foreach a $agents_ {                if { [$a set portID_] == $port } {                        return $a                }        }        return ""}## reset all agents attached to this node#Node instproc reset {} {	$self instvar agents_	foreach a $agents_ {		$a reset	}}## Some helpers#Node instproc neighbors {} {    $self instvar neighbor_    return $neighbor_}## Helpers for interface stuff#Node instproc attachInterfaces ifs {        $self instvar ifaces_        set ifaces_ $ifs        foreach ifc $ifaces_ {                $ifc setNode $self        }}Node instproc addInterface { iface } {        $self instvar ifaces_        lappend ifaces_ $iface        $iface setNode $self }Node instproc createInterface { num } {        $self instvar ifaces_        set newInterface [new NetInterface]        if { $num < 0 } { return 0 }        $newInterface set-label $num        return 1} Node instproc getInterfaces {} {        $self instvar ifaces_        return $ifaces_}Node instproc getNode {} {          return $self}## helpers for PIM stuff#Node instproc get-vif {} {        $self instvar vif_         if [info exists vif_] { return $vif_ }        set vif_ [new NetInterface]        $self addInterface $vif_        return $vif_}# List of corresponding peer TCP hosts from this node, used in IntTcpNode instproc addCorresHost {addr cw mtu maxcw wndopt } {	$self instvar chaddrs_	if { ![info exists chaddrs_($addr)] } {		set chost [new Agent/Chost $addr $cw $mtu $maxcw $wndopt]		set chaddrs_($addr) $chost	}	return $chaddrs_($addr)}## Node support for detailed dynamic routing#Node instproc init-routing rtObject {    $self instvar multiPath_ routes_ rtObject_    set multiPath_ [$class set multiPath_]    set nn [$class set nn_]    for {set i 0} {$i < $nn} {incr i} {	set routes_($i) 0    }    if ![info exists rtObject_] {	$self set rtObject_ $rtObject    }    $self set rtObject_}Node instproc rtObject? {} {    $self instvar rtObject_    if ![info exists rtObject_] {	return ""    } else {	return $rtObject_    }}## Node support for equal cost multi path routing#Node instproc add-routes {id ifs} {    $self instvar classifier_ multiPath_ routes_ mpathClsfr_    if {[llength $ifs] > 1 && ! $multiPath_} {	puts stderr "$class::$proc cannot install multiple routes"	set ifs [llength $ifs 0]	set routes_($id) 0    }    if { $routes_($id) <= 0 && [llength $ifs] == 1 &&	\	    ![info exists mpathClsfr_($id)] } {	# either we really have no route, or	# only one route that must be replaced.	$self add-route $id [$ifs head]	incr routes_($id)    } else {	if ![info exists mpathClsfr_($id)] {	    set mclass [new Classifier/MultiPath]	    if {$routes_($id) > 0} {		array set current [$classifier_ adjacents]		foreach i [array names current] {		    if {$current($i) == $id} {			$mclass installNext $i			break		    }		}	    }	    $classifier_ install $id $mclass	    set mpathClsfr_($id) $mclass	}	foreach L $ifs {	    $mpathClsfr_($id) installNext [$L head]	    incr routes_($id)	}    }}Node instproc delete-routes {id ifs nullagent} {    $self instvar mpathClsfr_ routes_    if [info exists mpathClsfr_($id)] {	array set eqPeers [$mpathClsfr_($id) adjacents]	foreach L $ifs {	    set link [$L head]	    if [info exists eqPeers($link)] {		$mpathClsfr_($id) clear $eqPeers($link)		unset eqPeers($link)		incr routes_($id) -1	    }	}    } else {	$self add-route $id $nullagent	incr routes_($id) -1    }}Node instproc intf-changed { } {    $self instvar rtObject_    if [info exists rtObject_] {	;# i.e. detailed dynamic routing        $rtObject_ intf-changed    }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久99久久精品欧美| 欧美制服丝袜第一页| 日韩欧美精品在线| 天天av天天翘天天综合网 | 日本一区二区三区视频视频| 久久精品国产精品亚洲精品| 91精品在线免费| 麻豆91精品91久久久的内涵| 欧美成人一区二区三区在线观看| 久久精品噜噜噜成人av农村| 26uuu欧美| 国产激情一区二区三区| 国产精品麻豆99久久久久久| 一本大道综合伊人精品热热| 亚洲一区免费视频| 日韩一区二区三区免费看| 国产一区二区三区免费播放| 国产精品国产精品国产专区不片 | 亚洲一区影音先锋| 欧美日本一道本| 久久精品久久精品| 国产日韩亚洲欧美综合| 欧美视频一区二区在线观看| 蜜臀av性久久久久蜜臀aⅴ四虎| 精品免费一区二区三区| 99精品桃花视频在线观看| 亚洲线精品一区二区三区| 欧美一级xxx| 成人精品亚洲人成在线| 亚洲无人区一区| 久久综合狠狠综合久久激情| 91视视频在线观看入口直接观看www| 亚洲激情中文1区| 欧美videos大乳护士334| 99在线精品视频| 蜜臀精品一区二区三区在线观看| 欧美国产精品劲爆| 欧美高清你懂得| 波多野结衣中文字幕一区二区三区| 亚洲一区二区三区在线播放| 日韩欧美你懂的| 欧美伊人久久久久久久久影院 | 亚洲.国产.中文慕字在线| 日韩精品一区二区在线| 97久久人人超碰| 男男成人高潮片免费网站| 亚洲私人影院在线观看| 日韩免费在线观看| 91豆麻精品91久久久久久| 国产一区二区福利| 水野朝阳av一区二区三区| 国产精品国产自产拍高清av| 日韩欧美的一区| 欧美性猛交xxxx黑人交| 懂色av一区二区在线播放| 免费高清在线视频一区·| 亚洲免费资源在线播放| 国产欧美日韩综合精品一区二区| 欧美精品国产精品| 久久久精品综合| 欧美日韩亚洲综合一区二区三区| 成人免费视频视频| 韩国一区二区三区| 日本大胆欧美人术艺术动态| 亚洲精品少妇30p| 国产精品久久综合| 欧美极品少妇xxxxⅹ高跟鞋| www精品美女久久久tv| 欧美一二三四在线| 这里只有精品视频在线观看| 91行情网站电视在线观看高清版| 国产91在线观看丝袜| 国内成人自拍视频| 国产综合色视频| 乱中年女人伦av一区二区| 热久久免费视频| 日韩成人免费电影| 日本成人超碰在线观看| 午夜欧美2019年伦理| 五月综合激情婷婷六月色窝| 亚洲国产精品久久久男人的天堂| 一区二区国产盗摄色噜噜| 亚洲欧美电影一区二区| 最新国产成人在线观看| 亚洲色图制服诱惑| 亚洲欧美另类小说| 亚洲专区一二三| 亚洲va欧美va人人爽午夜| 性感美女久久精品| 五月天久久比比资源色| 日本午夜一区二区| 狂野欧美性猛交blacked| 韩国精品主播一区二区在线观看| 免费在线成人网| 国产一区不卡视频| 成人激情黄色小说| 色哦色哦哦色天天综合| 欧美性色黄大片| 欧美麻豆精品久久久久久| 欧美一级在线免费| 久久久777精品电影网影网| 国产精品色婷婷| 亚洲女人的天堂| 亚洲成人自拍网| 免费在线观看不卡| 成人综合在线网站| 91激情在线视频| 日韩欧美一级片| 中日韩av电影| 亚洲国产精品一区二区久久| 人人狠狠综合久久亚洲| 国产福利精品导航| 在线观看一区二区精品视频| 欧美酷刑日本凌虐凌虐| 精品国产欧美一区二区| 国产精品日产欧美久久久久| 一区二区三区在线视频免费| 亚洲成人一区二区在线观看| 激情综合一区二区三区| 99久久精品国产毛片| 91.xcao| 国产欧美日韩综合| 日韩主播视频在线| 国产suv精品一区二区883| 欧美日韩中文精品| 国产亚洲综合在线| 亚洲电影一区二区三区| 国产乱国产乱300精品| 在线观看成人小视频| 久久奇米777| 午夜私人影院久久久久| 成人sese在线| 精品国产青草久久久久福利| 一区二区三区蜜桃| 国产不卡视频一区| 5月丁香婷婷综合| 亚洲免费在线看| 国产在线不卡一卡二卡三卡四卡| 欧美午夜影院一区| 国产精品国产三级国产aⅴ入口| 免费不卡在线视频| 欧美亚洲禁片免费| 亚洲欧洲av色图| 国产精品1区2区| 日韩视频一区二区在线观看| 亚洲免费电影在线| 成人激情视频网站| 久久先锋影音av| 青草国产精品久久久久久| 欧美性一二三区| 自拍视频在线观看一区二区| 国产一区二区调教| 日韩免费看网站| 午夜精品成人在线视频| 91福利视频网站| 自拍偷拍欧美精品| 99免费精品视频| 中文字幕一区二区三区不卡| 国产一区二区网址| 欧美精品一区二区三区蜜桃视频| 日韩制服丝袜av| 欧美日韩一区成人| 亚洲国产日韩精品| 欧美视频你懂的| 亚洲午夜三级在线| 日本二三区不卡| 一区二区三区中文在线观看| 91色porny在线视频| 自拍偷拍亚洲综合| 91女神在线视频| 亚洲日本在线a| 91欧美一区二区| 亚洲一区二区三区四区五区中文| 色综合一区二区三区| 亚洲精品国产精品乱码不99| 97精品国产97久久久久久久久久久久 | 成人午夜在线免费| 国产欧美一区二区三区沐欲| 国产激情一区二区三区四区| 久久久久久久久久电影| 国产成人在线网站| 国产精品视频九色porn| www.欧美色图| 亚洲综合清纯丝袜自拍| 欧美久久免费观看| 美国十次综合导航| 久久免费视频色| 99视频国产精品| 亚洲午夜久久久久| 日韩欧美国产一二三区| 国产精品一二三区| 国产精品久久久久久久久免费桃花| 成人a级免费电影| 亚洲一区二区三区在线播放| 91精品国产一区二区三区| 国模一区二区三区白浆| 国产精品网曝门| 欧美日韩午夜影院| 国产精品一二三四区| 日韩毛片精品高清免费|