Link Control Protocol: Difference between revisions

Content deleted Content added
No edit summary
m v2.05 - Fix errors for CW project (Reference list missing / disambiguation page with disallowed <ref>)
 
(56 intermediate revisions by 44 users not shown)
Line 1:
In [[computer network]]ing, the '''Link Control Protocol''' (LCP) forms part of the [[Point-to-Point Protocol]] (PPP), within the family of [[Internet protocols]]. In setting up PPP communications, both the sending and receiving devices send out LCP [[packet (information technology)|packet]]s to determine the standards of the ensuing data transmission.
'''1'''
Short for Link Control Protocol, a protocol that is part of the [[Point-to-Point Protocol|PPP]]. In PPP communications, both the sending and receiving devices send out LCP packets to determine specific information that will be required for the data transmission. The LCP checks the identity of the linked device and either accepts or rejects the peer device, determines the acceptable packet size for transmission, searches for errors in configuration and can terminate the link if the parameters are not satisfied. Data cannot be transmitted over the network until the LCP packet determines that the link is acceptable.
 
The [[Communications protocol|protocol]]:
* checks the identity of the linked device and either accepts or rejects the device
* determines the acceptable packet size for transmission
* searches for errors in configuration
* can terminate the link if requirements exceed the parameters
LCP packets are sent during the ''Link Establishment Phase'' of PPP, after the [[physical layer]] has been made ready from the ''Link Dead'' state. No transmission of [[Network layer|network-layer protocols]] such as [[Internet Protocol|IP]] may be transmitted across PPP until after the ''Link Establishment'' or ''Authentication'' phases are complete. When a connection is requested by a peer to be terminated (or if ''Authentication'' fails), the ''Link Termination Phase'' is performed, and PPP returns to the ''Link Dead'' state.
 
== Structure ==
'''2'''
{| class="wikitable"
[[Lebanese Communist Party]]
! style="width:7%; border-bottom:none; border-right:none;" |''Offsets''
! style="width:7%; border-left:none;" |[[Octet (computing)|Octet]]
! colspan="8" |0
! colspan="8" |1
! colspan="8" |2
! colspan="8" |3
|-
! style="border-top: none" |[[Octet (computing)|Octet]]
![[Bit]]
! style="width:2.4%;" |0
! style="width:2.4%;" |1
! style="width:2.4%;" |2
! style="width:2.4%;" |3
! style="width:2.4%;" |4
! style="width:2.4%;" |5
! style="width:2.4%;" |6
! style="width:2.4%;" |7
! style="width:2.4%;" |8
! style="width:2.4%;" |9
! style="width:2.4%;" |10
! style="width:2.4%;" |11
! style="width:2.4%;" |12
! style="width:2.4%;" |13
! style="width:2.4%;" |14
! style="width:2.4%;" |15
! style="width:2.4%;" |16
! style="width:2.4%;" |17
! style="width:2.4%;" |18
! style="width:2.4%;" |19
! style="width:2.4%;" |20
! style="width:2.4%;" |21
! style="width:2.4%;" |22
! style="width:2.4%;" |23
! style="width:2.4%;" |24
! style="width:2.4%;" |25
! style="width:2.4%;" |26
! style="width:2.4%;" |27
! style="width:2.4%;" |28
! style="width:2.4%;" |29
! style="width:2.4%;" |30
! style="width:2.4%;" |31
|-
! colspan="34" |[[Point-to-Point Protocol#Structure|Point-to-Point Protocol]]
|-
!0
!0
| colspan="8" |Flag (0x7E)
| colspan="8" |Address (0xFF)
| colspan="8" |Control (0x03)
| colspan="8" |Protocol (0xC0)
|-
!4
!32
| colspan="8" |Protocol, cont. (0x21)
! colspan="24" |
|-
! colspan="34" |Link Control Protocol
|-
!0
!0
| colspan="8" |Code
| colspan="8" |Identifier
| colspan="16" |Length
|-
! colspan="2" rowspan="5" |
! colspan="32" |''Link Configuration''
|-
! colspan="2" rowspan="4" |Code
|1
! colspan="2" rowspan="4" |Name
| colspan="5" |Configure-Request
! colspan="4" rowspan="4" |Description
| colspan="18" |Peer requesting connection with the specified options over link defaults.
|-
|2
| colspan="5" |Configure-Ack
| colspan="18" |Peer requesting connection with the specified options over link defaults.
|-
|3
| colspan="5" |Configure-Nak
| colspan="18" |Peer recognizes given options, but some are not acceptable.
|-
|4
| colspan="5" |Configure-Reject
| colspan="18" |Peer does not recognize or is prohibited from accepting some given options.
|-
!4
!32
| colspan="32" |List of option data, size variable
|-
! colspan="2" rowspan="3" |
! colspan="32" |Link Termination
|-
! colspan="2" rowspan="2" |Code
|5
! colspan="2" rowspan="2" |Name
| colspan="5" |Terminate-Request
! colspan="4" rowspan="2" |Description
| colspan="18" |Peer requesting to close the connection.
|-
|6
| colspan="5" |Terminate-Ack
| colspan="18" |Peer accepts connection closure, or requires re-negotiation.
|-
!4
!32
| colspan="32" |Uninterpreted data by the sender, size variable
|-
! colspan="2" rowspan="2" |
! colspan="32" |Link Maintenance
|-
! colspan="2" |Code
|7
!Name
| colspan="5" |Code-Reject
! colspan="2" |Description
| colspan="21" |Peer does not recognize a provided LCP code.
|-
!4
!32
| colspan="32" |Faulting LCP Packet, size variable
|-
! colspan="2" rowspan="2" |
! colspan="2" |
! colspan="30" |LCP-Specific Codes
|-
! colspan="2" |Code
|8
!Name
| colspan="5" |Protocol-Reject
! colspan="2" |Description
| colspan="21" |Peer does not recognize a protocol used within the ''LCP Opened'' state.
|-
!4
!32
| colspan="16" |Rejected PPP Protocol
| colspan="16" |Faulting Packet, size variable
|-
! colspan="2" rowspan="3" |
! colspan="2" rowspan="3" |Code
|9
! rowspan="3" |Name
| colspan="5" |Echo-Request
! colspan="3" rowspan="3" |Description
| colspan="20" |Peer is requesting an Echo-Reply.
|-
|10
| colspan="5" |Echo-Reply
| colspan="20" |Peer is responding to an Echo-Request (only acceptable when in ''LCP Opened.'')
|-
|11
| colspan="5" |Discard-Request
| colspan="20" |Peer is sending data to be discarded ("sinked") by the remote peer.
|-
!4
!32
| colspan="32" |Magic Number (0, if '''Configure-Request''' / '''Configure-Ack''' have not established one yet)
|-
!8
!64
| colspan="32" |Uninterpreted data by the sender, size variable
|}
 
=== Link Configuration Option ===
[[zh:链路控制协议]]
{| class="wikitable"
! style="width:7%; border-bottom:none; border-right:none;" |''Offsets''
! style="width:7%; border-left:none;" |[[Octet (computing)|Octet]]
! colspan="8" |0
! colspan="8" |1
! colspan="8" |2
! colspan="8" |3
|-
! style="border-top: none" |[[Octet (computing)|Octet]]
![[Bit]]
! style="width:2.4%;" |0
! style="width:2.4%;" |1
! style="width:2.4%;" |2
! style="width:2.4%;" |3
! style="width:2.4%;" |4
! style="width:2.4%;" |5
! style="width:2.4%;" |6
! style="width:2.4%;" |7
! style="width:2.4%;" |8
! style="width:2.4%;" |9
! style="width:2.4%;" |10
! style="width:2.4%;" |11
! style="width:2.4%;" |12
! style="width:2.4%;" |13
! style="width:2.4%;" |14
! style="width:2.4%;" |15
! style="width:2.4%;" |16
! style="width:2.4%;" |17
! style="width:2.4%;" |18
! style="width:2.4%;" |19
! style="width:2.4%;" |20
! style="width:2.4%;" |21
! style="width:2.4%;" |22
! style="width:2.4%;" |23
! style="width:2.4%;" |24
! style="width:2.4%;" |25
! style="width:2.4%;" |26
! style="width:2.4%;" |27
! style="width:2.4%;" |28
! style="width:2.4%;" |29
! style="width:2.4%;" |30
! style="width:2.4%;" |31
|-
!0
!0
| colspan="8" |Type
| colspan="8" |Length
! colspan="16" |
|-
! colspan="2" |
! colspan="2" |Type
|0
! colspan="2" |Name
| colspan="5" |Vendor Specific
! colspan="3" |Description
| colspan="19" |Vendor specific data not defined by the PPP specification.
|-
!2
!16
| colspan="24" |Vendor's [[Organizationally unique identifier|Organizationally Unique Identifier]]
| colspan="8" |Kind (OUI Subtype)
|-
!6
!48
| colspan="32" |Vendor defined data, size variable
|-
! colspan="2" |
! colspan="2" |Type
|1
! colspan="2" |Name
| colspan="5" |[[Maximum receive unit|Maximum-Receive-Unit]]
! colspan="3" |Description
| colspan="19" |Defines a peer's MRU, overriding the default of 1,500 octets.
|-
!2
!16
| colspan="16" |The maximum-receive-unit for this peer's implementation
! colspan="16" |
|-
! colspan="2" |
! colspan="2" |Type
|3
! colspan="2" |Name
| colspan="5" |Authentication-Protocol
! colspan="3" |Description
| colspan="19" |Defines an [[authentication protocol]] for a remote peer to [[Authentication|authenticate]] with before transitioning phases.
|-
!2
!16
| colspan="16" |The requested authentication protocol, assigned by IANA<ref>{{Cite web |title=Point-to-Point (PPP) Protocol Field Assignments |url=https://www.iana.org/assignments/ppp-numbers/ppp-numbers.xhtml#ppp-numbers-9 |access-date=2025-03-18 |website=www.iana.org}}</ref>
| colspan="16" |Additional data for this protocol, size variable
|-
! colspan="2" |
! colspan="2" |Type
|4
! colspan="2" |Name
| colspan="5" |Quality-Protocol
! colspan="3" |Description
| colspan="19" |Defines a [[quality protocol]] for [[link quality monitoring]].
|-
!2
!16
| colspan="16" |The requested quality protocol
| colspan="16" |Additional data for this protocol, size variable
|-
! colspan="2" |
! colspan="2" |Type
|5
! colspan="2" |Name
| colspan="5" |[[Magic number (programming)|Magic-Number]]
! colspan="3" |Description
| colspan="19" |Defines a unique identifier for a peer.
|-
!2
!16
| colspan="32" |Magic number
|-
! colspan="2" rowspan="2" |
! colspan="2" |Type
|7
! colspan="2" |Name
| colspan="6" |Protocol-Field-Compression
! colspan="3" |Description
| colspan="18" |No data. Refer to [[rfc:1661|RFC 1661]] Section [[rfc:1661#section-6.5|6.5]] for details.
|-
! colspan="2" |Type
|8
! colspan="2" |Name
| colspan="8" |Address-and-Control-Field-Compression
! colspan="3" |Description
| colspan="16" |No data. Refer to [[rfc:1661|RFC 1661]] Section [[rfc:1661#section-6.6|6.6]] for details.
|}
 
==References==
'''3'''
{{Reflist}}
[[Lights, Camera, Pants!]]
 
== External links ==
* {{IETF RFC|1570|link=no}}: PPP LCP Extensions
* {{IETF RFC|1661|link=no}}: The Point-to-Point Protocol (PPP)
* {{IETF RFC|1663|link=no}}: PPP Reliable Transmission
* {{cite web|last1=Kozierok|first1=Charles|title=PPP Link Control Protocol (LCP)|url=http://www.tcpipguide.com/free/t_PPPLinkControlProtocolLCP.htm|website=The TCP/IP Guide|accessdate=4 December 2014}}
[[Category:Link protocols]]
[[Category:Internet Standards]]