Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support of DHCPV4 & Client and Server #361

Open
wants to merge 68 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
b560fd3
dhcp draft proposal model
SuryyaKrJana Mar 7, 2024
f5fb264
issue
SuryyaKrJana Mar 7, 2024
afea8e2
Update auto generated content
actions-user Mar 7, 2024
66c6526
removed choice from dhcp client
SuryyaKrJana Mar 8, 2024
7a5552b
Update auto generated content
actions-user Mar 8, 2024
b37ea05
update relay-agent & traffic auto field not to default option
SuryyaKrJana Mar 8, 2024
4bfb7a2
Merge branch 'dhcp_support' of https://github.com/open-traffic-genera…
SuryyaKrJana Mar 8, 2024
bd61e63
Update auto generated content
actions-user Mar 8, 2024
2393261
incorporated review comments
SuryyaKrJana Mar 11, 2024
d1793ca
Alternative approach for dhcp support by introducing chained ethernet
SuryyaKrJana Mar 11, 2024
527f1f5
Update auto generated content
actions-user Mar 11, 2024
57e0337
few correction
SuryyaKrJana Mar 11, 2024
32953a7
adding proposal doc
SuryyaKrJana Mar 11, 2024
6da4805
Merge branch 'dhcp_support2' of https://github.com/open-traffic-gener…
SuryyaKrJana Mar 11, 2024
a1d24f9
Update auto generated content
actions-user Mar 11, 2024
7db3400
minor changes
SuryyaKrJana Mar 11, 2024
13f801b
Merge branch 'dhcp_support2' of https://github.com/open-traffic-gener…
SuryyaKrJana Mar 11, 2024
ea1810b
added dhcpv4 client's stats, learned info and dhcpv4 server's config…
SuryyaKrJana Mar 11, 2024
32ef74b
DHCP PR for review
SuryyaKrJana Mar 13, 2024
1c9f22e
Update auto generated content
actions-user Mar 13, 2024
fc8a9d6
point to dev branch openapiart
Vibaswan Mar 14, 2024
2b76886
Update auto generated content
actions-user Mar 14, 2024
895efc7
proposal file
SuryyaKrJana Mar 15, 2024
9a583fa
Update auto generated content
actions-user Mar 15, 2024
81c8488
merging from main
SuryyaKrJana Mar 15, 2024
e5fd7e4
openapi.yaml otg.proto
SuryyaKrJana Mar 15, 2024
c571e7a
Update auto generated content
actions-user Mar 15, 2024
6331442
changes in get state
SuryyaKrJana Mar 18, 2024
926726b
Update auto generated content
actions-user Mar 18, 2024
e331b91
some fix in dhcpv4 client stats
SuryyaKrJana Mar 19, 2024
2c2d693
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 19, 2024
dbb4f87
Update auto generated content
actions-user Mar 19, 2024
70da75c
incorporation of review comments and addeded server Get states
SuryyaKrJana Mar 21, 2024
2cdcc35
Update auto generated content
actions-user Mar 21, 2024
a466590
dhcpv4 server stats linkage is done now
SuryyaKrJana Mar 21, 2024
e1a8378
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 21, 2024
f32f8b9
Update auto generated content
actions-user Mar 21, 2024
b4bd625
dropping traffic and some review comments
SuryyaKrJana Mar 26, 2024
983c57b
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 26, 2024
e07040f
Rename dhcpv4serverLeases.yaml to dhcpv4serverleases.yaml
SuryyaKrJana Mar 26, 2024
53ee2a2
Update auto generated content
actions-user Mar 26, 2024
81f7ef4
minor fixes
SuryyaKrJana Mar 27, 2024
21f48bb
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 27, 2024
4a3bf91
Update auto generated content
actions-user Mar 27, 2024
a466e8a
array of dhcpv4/6 clients over an ethernet. array pool to single pool
SuryyaKrJana Mar 27, 2024
fdb19c6
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 27, 2024
0544ab8
Update auto generated content
actions-user Mar 27, 2024
a056cf4
minor comments
SuryyaKrJana Mar 27, 2024
0aa0692
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 27, 2024
3aa8b5f
Update auto generated content
actions-user Mar 27, 2024
5cd6d4d
minor fix
SuryyaKrJana Mar 27, 2024
72b51b6
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 27, 2024
71e0d60
Update auto generated content
actions-user Mar 27, 2024
04766e0
review comments by Subham
SuryyaKrJana Mar 28, 2024
8bd0f56
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 28, 2024
d712d67
Update auto generated content
actions-user Mar 28, 2024
b03ffa7
removed manual gw configuration fro first release, removed server sid…
SuryyaKrJana Mar 28, 2024
c57b759
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 28, 2024
e220e74
Update auto generated content
actions-user Mar 28, 2024
5234054
introduced choice in selecting server
SuryyaKrJana Mar 28, 2024
1f3bea6
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 28, 2024
0a92be0
Update auto generated content
actions-user Mar 28, 2024
1d50754
server lease address_pool --> address_pools
SuryyaKrJana Mar 29, 2024
fc13102
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 29, 2024
b51eb72
Update auto generated content
actions-user Mar 29, 2024
756dba2
some fixes
SuryyaKrJana Mar 29, 2024
512f2c4
Merge branch 'dhcp_support_pr' of https://github.com/open-traffic-gen…
SuryyaKrJana Mar 29, 2024
9e3be31
Update auto generated content
actions-user Mar 29, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 13 additions & 9 deletions artifacts/openapi.html

Large diffs are not rendered by default.

1,386 changes: 1,137 additions & 249 deletions artifacts/openapi.yaml

Large diffs are not rendered by default.

566 changes: 560 additions & 6 deletions artifacts/otg.proto

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion build.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
USE_OPENAPIART_DIR = None

# supported values - branch name or None
USE_OPENAPIART_BRANCH = None
USE_OPENAPIART_BRANCH = "support-auto-dhcp-feature"

OPENAPIART_REPO = "https://github.com/open-traffic-generator/openapiart.git"

Expand Down
3 changes: 2 additions & 1 deletion device/bgp/bgpv4.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -82,12 +82,13 @@ components:
properties:
ipv4_name:
description: >-
The unique name of the IPv4 or Loopback IPv4 interface
The unique name of the IPv4, Loopback IPv4 interface or DHCPv4 client
used as the source IP for this list of BGP peers.
type: string
x-constraint:
- '/components/schemas/Device.Ipv4/properties/name'
- '/components/schemas/Device.Ipv4Loopback/properties/name'
- '/components/schemas/DhcpClient.V4/properties/name'
x-field-uid: 1
peers:
description: >-
Expand Down
3 changes: 2 additions & 1 deletion device/bgp/bgpv6.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -85,12 +85,13 @@ components:
properties:
ipv6_name:
description: >-
The unique name of IPv6 or Loopback IPv6 interface
The unique name of IPv6 Loopback IPv6 interface or DHCPv4 client
used as the source IP for this list of BGP peers.
type: string
x-constraint:
- '/components/schemas/Device.Ipv6/properties/name'
- '/components/schemas/Device.Ipv6Loopback/properties/name'
- '/components/schemas/DhcpClient.V6/properties/name'
x-field-uid: 1
peers:
description: >-
Expand Down
11 changes: 11 additions & 0 deletions device/device.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,17 @@ components:
The properties of an RSVP router and its children.
$ref: './rsvp/rsvp.yaml#/components/schemas/Device.Rsvp'
x-field-uid: 8
dhcp_server:
description: >-
The properties of DHCP Server and its children, such as DHCPv4, DHCPv6 servers.
$ref: './dhcp/servers/dhcpserver.yaml#/components/schemas/Device.DhcpServer'
x-field-uid: 9
relay_agent:
description: >-
This module describes a model for configuration related to Relay Agents.
https://datatracker.ietf.org/doc/html/rfc3046.
$ref: './relayagent/relayagent.yaml#/components/schemas/Device.RelayAgent'
x-field-uid: 10
required: [name]
Protocol.Options:
description: >-
Expand Down
34 changes: 34 additions & 0 deletions device/dhcp/clients/v4/dhcpclientparams.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
components:
schemas:
Dhcpv4Client.Params:
description: >-
Configuration Parameter request list by emulated DHCPv4 Client.
type: object
properties:
subnet_mask:
description: >-
Request for the subnet mask option specifies the client's subnet mask as per RFC950.
type: boolean
default: true
x-field-uid: 1
router:
description: >-
Request for the router option that specifies a list of IP addresses for routers on the
client's subnet.
type: boolean
default: true
x-field-uid: 2
renewal_timer:
description: >-
Request for the renewal timer, T1.
When the timer expires, the client transitions from the BOUND state to the RENEWING state.
type: boolean
default: false
x-field-uid: 3
rebinding_timer:
description: >-
Request for the rebinding timer (T2).
When expires, the client transitions to the REBINDING state.
type: boolean
default: false
x-field-uid: 4
60 changes: 60 additions & 0 deletions device/dhcp/clients/v4/dhcpv4client.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
components:
schemas:
Device.Dhcpv4client:
description: >-
Configuration for emulated DHCPv4 Client on a single Interface.
https://www.rfc-editor.org/rfc/rfc2131.html
type: object
x-status:
status: under_review
required: [name]
properties:
name:
x-include: ../../../../common/common.yaml#/components/schemas/Named.Object/properties/name
x-field-uid: 1
choice:
description: >-
The client receives one or more DHCPOFFER messages from one or more servers and client may choose to wait for multiple responses.
The client chooses one server from which to request configuration
parameters, based on the configuration parameters offered in the DHCPOFFER messages.
first_server: if selected, the subnet accepts the IP addresses offered by the first server to respond with an offer of IP addresses.
server_address: The address of the DHCP server from which the subnet will accept IP addresses.
If server_address is selected then next field 'server_address' to be assigned with a IP address.
type: string
default: first_server
x-field-uid: 2
x-enum:
first_server:
x-field-uid: 1
server_address:
x-field-uid: 2
first_server:
SuryyaKrJana marked this conversation as resolved.
Show resolved Hide resolved
type: boolean
default: true
x-field-uid: 3
server_address:
$ref: '#/components/schemas/Dhcpv4client.Server'
x-field-uid: 4
broadcast:
description: >-
If the broadcast bit is set, then the server and relay agent broadcast DHCPOFFER and DHCPACK messages.
type: boolean
default: false
x-field-uid: 5
parameters_request_list:
description: >-
Optional parameters field request list of DHCPv4 Client.
$ref: './dhcpclientparams.yaml#/components/schemas/Dhcpv4Client.Params'
x-field-uid: 6
Dhcpv4client.Server:
description: >-
The address of the DHCP server from which the subnet will accept IP addresses.
type: object
properties:
ip:
description: |-
The address of the DHCP server.
type: string
format: ipv4
x-field-uid: 1

14 changes: 14 additions & 0 deletions device/dhcp/clients/v6/dhcpv6client.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
components:
schemas:
Device.Dhcpv6client:
description: >-
Configuration for emulated DHCPv6 Client on a single Interface.
https://www.rfc-editor.org/rfc/rfc2131.html
type: object
x-status:
status: under_review
required: [name]
properties:
name:
x-include: ../../../../common/common.yaml#/components/schemas/Named.Object/properties/name
x-field-uid: 1
Loading