Files
network-diagrams-tool/UML/UML.txt
T
2025-11-23 17:37:45 +03:00

80 lines
1.3 KiB
Plaintext

@startuml
' ===========================
' Abstract base class
' ===========================
abstract class Device {
- name : String
- mgmtIP : String
- interfaces : Interface[*]
}
Device "1" o-- "0..*" Interface : has >
' ===========================
' Device Types
' ===========================
class Host {
- operatingSystem : String
}
class Router {
- routingTable : Map
- routingProtocols : List
}
class Switch {
- macTable : Map
- vlanDatabase : Map
}
Device <|-- Host
Device <|-- Router
Device <|-- Switch
' ===========================
' Interfaces
' ===========================
class Interface {
- name : String
- ipAddress : String
- macAddress : String
- speed : String
- duplex : String
}
class VirtualInterface {
- vlanId : Integer
- parentPhysical : Interface
}
Interface <|-- VirtualInterface
' ===========================
' Physical Links
' ===========================
class Wire {
- type : String
- endpoints : Interface[2]
- bandwidth : String
}
Wire "1" -- "2" Interface : connects >
' ===========================
' Optional: Networks / Subnets
' ===========================
class Network {
- cidr : String
- gateway : String
}
Network "1" o-- "0..*" Interface : membership >
@enduml