#
# Copyright 2017-present Open Networking Foundation
#
# 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.
#
#
# --- Elements (Singular)
node=노드
topology=토폴로지
network=네트워크
region=리젼
device=장치
host=호스트
link=링크
intent=Intent (ko)
tunnel=Tunnel (ko)
flow=Flow (ko)
port=Port (ko)

# --- Elements (Plural)
nodes=노드
topologies=토폴로지
topology_sccs=Topology SCCs (ko)
networks=네트워크
regions=리젼
devices=장치
hosts=호스트
links=링크
intents=Intents (ko)
tunnels=Tunnels (ko)
flows=Flows (ko)
ports=Ports (ko)

# --- Element IDs
node_id=노드 아이디
region_id=리젼 아이디
device_id=장치 아이디
host_id=호스트 아이디
link_id=링크 아이디
intent_id=Intent ID (ko)
tunnel_id=Tunnel ID (ko)
flow_id=Flow ID (ko)
port_id=Port ID (ko)

# --- Protocol terms
protocol=프로토콜
ip=아이피
ip_address=아이피 주소
tcp_port=TCP 포트 번호
mac=MAC
mac_address=MAC 주소
uri=URI
vlan=VLAN (ko)
