Commit Graph

312 Commits

Author SHA1 Message Date
Mikio Hara f72223e66a Specify port number when requsting port stats
Enable the port stats for a particular port to be requested by
specifying a port number. Can request all port stats by specifying
OFPP_NONE for the port number.
2009-12-11 15:43:37 -08:00
Mikio Hara 1c9b2f7b2d IPv4 DSCP match: Add IPv4 DSCP field match feature
Note: Now regression test sets *and* tests the IPv4 DSCP bits.  Test
script was renamed from test_set_nw_tos to test_set_n_match_nw_tos.
2009-12-11 15:43:36 -08:00
Rob Sherwood 20634da473 added dp_desc field to ofp_stats_desc
added a human readable string to ofp_stats_desc to describe
the datapath, e.g., "switch4 in closet 3b of Gates"

* updated openflow.h
* updated udatapath: defaults to "$HOSTNAME pid=$$"
* updated kernel datapath: defaults to "$HOSTNAME idx=$i"
* updated wireshark plugin
* added regression test for ofp_desc_stats
* addressed KK's review comments from:
    https://mailman.stanford.edu/pipermail/openflow-dev/2009-December/000545.html
2009-12-11 15:43:35 -08:00
Mikio Hara 7d1591aec9 Add debian new kernel module build style support
Please run configure as
	./configure --with-l26=/lib/modules/`uname -r`
instead of
	./configure --with-l26=/lib/modules/`uname -r`/build
2009-10-21 11:35:38 -07:00
Mikio Hara 31a507fedc Adapt kernel datapath to new netdevice ops scheme
Note: 2.6.29 to 2.6.30 kernel provides CONFIG_COMPAT_NET_DEV_OPS,
so we recommend that use this option except 2.6.31 and higher kernel.
2009-10-21 11:35:30 -07:00
Glen Gibb f492a9d519 Remove tcp_flags/ip_tos tracking used by NetFlow 2009-10-15 14:14:47 -07:00
Glen Gibb 17af341ffe Don't perform 64-bit division in kernel
Replace 64-bit division (using '/') to call to do_div. This function is
designed for use in the kernel.
2009-10-15 14:14:47 -07:00
Glen Gibb ea288488c8 Replace ns_flow_end with ofp_flow_removed
datapath/udatapath now sends ofp_flow_removed messages instead of
nx_flow_end. This allows for the removal of secchan/flow-end.* as
flow-end message now no longer need to be translated.
2009-10-14 15:56:37 -07:00
Glen Gibb add3e639a9 Replace NXFER_* with OFPRR_* constants 2009-10-14 15:56:36 -07:00
Glen Gibb d1957f2054 s/nx_flow_end_reason/ofp_flow_removed_reason/g
Replaced references to custom Nicira flow end reason and replaced with
OpenFlow flow removed reason.
2009-10-14 15:56:36 -07:00
Glen Gibb 2b1c086060 Remove Nicira action processing
No custom Nicira actions in reference code so remove handlers from codebase.
2009-10-14 15:56:36 -07:00
Glen Gibb 5f171ff224 Remove unused Nicira message processing code
No longer sending NXT_FLOW_END_CONFIG messages so remove code associated
with this message.
2009-10-14 15:56:36 -07:00
Glen Gibb ec0c97d6a1 Removed send_flow_end field from datapath struct
send_flow_end was a hold-over from 0.8.x releases. Version 0.9 removed the
datapath-wide send flow mod expire flag and replaced it by a per-flow flag.
This field was used by the NetFlow code to force notification of expires.
2009-10-14 15:56:36 -07:00
tyabe db2c99e8e0 Update README on hwtable_nf2 2009-09-04 10:42:17 -07:00
Mikio Hara 7b0c7e50c7 Cosmetic changes 2009-09-04 09:58:01 -07:00
Mikio Hara 83fa636860 Start port enumeration: Change OpenFlow enabled NetFPGA start port
enumeration at 1 (by tyabe@stanford.edu)
2009-09-01 15:54:01 -07:00
Mikio Hara d3acb95186 Flow mod behavior: Support CHECK_OVERLAP feature on NetFPGA
implementaion (by tyabe@stanford.edu)
2009-09-01 15:49:47 -07:00
Mikio Hara 59c9a188d6 Cosmetic change: Made use of definition instead of raw value 2009-07-16 12:53:19 -07:00
Mikio Hara 3f3dc5f1fc Remove experimental XEN adaptation 2009-07-16 09:26:26 -07:00
Mikio Hara 623e899a93 Bug fix: Restore 64-bit struct alignment
Commit 238c5065 (Vlan pcp match: Reorder VLAN priority field...)
changed ofp_match from 36B to 40B, breaking the 8B alignment of a
number of structs.  This commit modifies those structs to at least
pass the assertion tests and regression tests.
2009-07-16 09:23:19 -07:00
Mikio Hara ad94e12a04 Change meaning miss_send_len of set config and max_len field of output
action

If "max_send_len" (or the "max_len" field for the controller output
action) is zero, then send a packet-in with zero bytes of the packet
data.
2009-07-15 09:47:15 -07:00
Mikio Hara 034c75b75d Emergency flow cache: Rename error code from OFPFMFC_EMERG to
OFPFMFC_BAD_EMERG_TIMEOUT
2009-07-15 09:38:15 -07:00
Mikio Hara 36a60a74fc Emergency flow cache: Suppress flow removed notification for flows in
emergency flow table, add logic to emergency flow to reject entries
with timer
2009-07-11 21:02:04 -07:00
Mikio Hara 9b3b165270 Change manufacturer information 2009-07-02 05:46:48 -07:00
Mikio Hara 01593f3c49 Namespace change: Rename flow expiration to flow removed 2009-07-01 19:58:06 -07:00
Mikio Hara 680f63b514 Rewrite IP ToS/DSCP: Add IP ToS/DSCP field rewrite feature 2009-07-01 11:28:51 -07:00
Mikio Hara 292ffb1f39 Barrier command: Add new protocol messages: barrier request and reply
When a switch receives a barrier message it must first complete all
commands sent before the barrier message before executing any commands
after it. When all commands before the Barrier message have completed,
it must send a barrier reply message back to the controller.
2009-06-29 11:21:40 -07:00
Mikio Hara 6265df8d21 Remove experimental bridge compat framework 2009-06-29 10:04:11 -07:00
Mikio Hara 1ae2cd3781 Start port enumeration: Change OpenFlow start port enumeration at 1 2009-06-29 10:02:02 -07:00
Yiannis Yiakoumis a47208dc76 Flow mod behavior: Add a new flag to flow mods and flow conflict
detection handler for table maintanance

Add a CHECK_OVERLAP flag to flow mods which requires the switch to do
the (potentially more costly) check that there doesn't already exist a
conflicting flow with the same priority. If there is one, the mod
fails and an error code is returned.

Flow expiry: Record OFPFF_SEND_FLOW_EXP flag in user data path
2009-06-29 10:00:55 -07:00
tyabe 37d17d3012 NetFPGA project "register_system_2.0" adaptation 2009-06-29 07:28:44 -07:00
tyabe 73f268ab10 Vlan pcp match: Implemented on hwtable_nf2 (NetFPGA) 2009-06-29 07:28:26 -07:00
tyabe dde4979698 Vlan pcp match: Implemented on datapath and udatapath 2009-06-29 07:27:42 -07:00
tyabe@stanford.edu 5cebe4612a Flow expiry: Expire message when flow is deleted: NetFPGA support 2009-06-29 07:27:05 -07:00
Glen Gibb b2b952792e Flow expiry: Replace refernces to OFPC_SEND_FLOW_EXP refs
Replaced references to OFPC_SEND_FLOW_EXP in dpinst with flow->send_flow_exp
2009-06-29 07:05:27 -07:00
Glen Gibb 500fb599be Flow expiry: Send flow exp if the flow's send_exp flag is set 2009-06-29 07:04:48 -07:00
Glen Gibb b6309b3236 Flow expiry: Record the OFPFF_SEND_FLOW_EXP flag 2009-06-29 07:04:19 -07:00
Glen Gibb 44d43c2988 Flow expiry: Add send_flow_exp to nx_flow_end msg
Need to pass message that indicates whether to send flow expiry message
to the controller.
2009-06-29 07:04:02 -07:00
Glen Gibb 1f535b5443 Flow expiry: Add a send_flow_exp flag to the sw_flow struct
This flag is used to indicate whether a flow expiry should be sent to
the controller.
2009-06-29 07:03:31 -07:00
Glen Gibb c6f1379fff Flow expiry: Remove all references to OFPC_SEND_FLOW_EXP 2009-06-29 07:03:06 -07:00
Glen Gibb ad42ba0b93 Flow expiry: Added idle_timout to nx_flow_end struct
Extra field added to struct
Padding field split
Populate idle_timeout in dp_send_flow_end funcs
2009-06-29 06:59:05 -07:00
Mikio Hara 58ee7f213f Emergency flow cache: Add emergency flow cache framework
Emergency flow cache use completely separate flow table from working
and its table ID for stats is 0xfe.
2009-06-29 06:57:37 -07:00
Mikio Hara 9cf6bcdd04 Add vendor extension stats hook patches from HPL (jt@hpl.hp.com)
vendor_stat: This is a patch that add vendor stats primitive and
reorganise the flow creation process. It does not add any
functionality, it just make it easier for us to add our own hooks.
2009-06-29 06:43:02 -07:00
Mikio Hara 43f19193fb Remove experimental SNAT (source NAT) support 2009-06-29 05:33:18 -07:00
Mikio Hara d56d5661df Protocol stats: Add OpenFlow protocol statistical information
collector

Fix BUG#49: Add OpenFlow protocol statistical information collector
and user interface. This feature use PRIVATE_VENDOR_ID to communicate
betwewn control plane process and user interface. PRIVATE_VENDOR_ID is
defined only for private use (and based on private OUI).
2009-06-29 05:22:54 -07:00
Mikio Hara 4b9c74b4bc Improve NetFPGA enabled OpenFlow switch
Fix BUG#45: Add watchdog timer with automatic table flush to prevent
unpredictable packet forwarding in case of datapth communication lost.
Fix BUG#46: Correct IP packet lenght handling.
2009-06-29 05:07:08 -07:00
Mikio Hara c30c369073 Remove Liunx 2.4 support for kernel datapath 2009-06-29 05:04:20 -07:00
Mikio Hara 5ff6ec248d Change code base to Nicira's master branch 2009-06-29 05:03:42 -07:00
Mikio Hara 695db2964e Change code base to Nicira's for-nox/0.4 branch
Remove monolithic OpenFlow switch.
Add userspace datapath.
Fix BUG#13: Revise check wildcards for in_port != out_port output
validation.
Fix BUG#30: Made use of get_jiffies_64 instead of jiffies.
Fix BUG#31: Fix NetFPGA crash in case of test_delete test harness run.
Fix BUG#32: Add stack depth limitation to avoid inifinite loop in
log_backtrace.
Fix BUG#33: Improve NetFPGA kernel extension and NetFPGA image to
support MAC address rewrite features (two actions) on NetFPGA enabled
OpenFlow switch.
Fix BUG#34: Add NetFPGA kernel extension source codes to create
distribution package with NetFPGA correctly.
Fix BUG#38: Improve regression test for FLOW_MOD ACTION SET_DL_SRC and
SET_DL_DST.
Fix BUG#39: Correct misunderstanding of byte order ops for OFPAT_XXX.
2009-06-29 05:02:16 -07:00
Tatsuya Yabe c4ea4fc18c Add description (supported platform) 2009-01-30 14:44:33 -08:00