58 lines
1.3 KiB
Plaintext
58 lines
1.3 KiB
Plaintext
/* Copyright 2013-present Barefoot Networks, Inc.
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
header_type ethernet_t {
|
|
fields {
|
|
dstAddr : 48;
|
|
srcAddr : 48;
|
|
etherType : 16;
|
|
}
|
|
}
|
|
|
|
header_type ipv4_t {
|
|
fields {
|
|
version : 4;
|
|
ihl : 4;
|
|
diffserv : 8;
|
|
totalLen : 16;
|
|
identification : 16;
|
|
flags : 3;
|
|
fragOffset : 13;
|
|
ttl : 8;
|
|
protocol : 8;
|
|
hdrChecksum : 16;
|
|
srcAddr : 32;
|
|
dstAddr: 32;
|
|
}
|
|
}
|
|
|
|
header_type tcp_t {
|
|
fields {
|
|
srcPort : 16;
|
|
dstPort : 16;
|
|
seqNo : 32;
|
|
ackNo : 32;
|
|
dataOffset : 4;
|
|
res : 3;
|
|
ecn : 3;
|
|
ctrl : 6;
|
|
window : 16;
|
|
checksum : 16;
|
|
urgentPtr : 16;
|
|
}
|
|
}
|
|
|
|
|