I'm working my way through the Sams teach yourself TCP/IP book and it say's that the Address Resolution Protocol belongs at the Internet layer.

Is this true?

Other sources claim it is a Network layer protocol?

closed as not a real question by Diogo, EBGreen, paradroid, Canadian Luke, Mokubai May 14 '12 at 19:34

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    -1: Sorry, but your question show no searches effort. Any google search would give you a lot of results(specifically 223.000.000 on my case)... – Diogo May 14 '12 at 19:02
  • +1 I remember looking it up once, infact as one answer says, it depends what model you use. He obviously did google and read and maybe even read books too and that is why he knows it's an issue, and he couldn't figure it out. I looked some years ago, I recall it wasn't easy. – barlop May 14 '12 at 19:19
  • 1
    paradroid is correct, it is both. Depending how deep you look, whether OSI or the DOD models (DOD Tcp/IP resides inside the OSI model). Certain TCP/IP protocols reside at different levels though. Most are at the "Application" level. But some reside at the "Host-to-Host" (TCP & UDP) and the "Internet" (ARP, RARP, ICMP & IP) levels of the DOD TCP/IP model. AND DOD TCP/IP model does not always translate across to the OSI model. There is grey area. – Logman May 14 '12 at 19:29
  • 1
    ARP is most certainly a layer 2 protocol, there is no debate about this or "grey areas". ARP doesn't traverse routers or subnets! type arp -a in a cmd window and see how many IPs you get, none of them are from any other subnets it is purely level 2. I think you guys are confusing RIP and ARP. That unless you aren't talking about the OSI model... – Not Kyle stop stalking me May 14 '12 at 19:38
  • 1
    Network use of MAC addresses falls on layer 2... Still missing your point. In fact when you talk about MAC addresses and ARP: On broadcast networks, such as Ethernet, the MAC address uniquely identifies each node on that segment and allows frames to be marked for specific hosts. It thus forms the basis of most of the Link layer (OSI Layer 2) networking upon which upper layer protocols rely to produce complex, functioning networks. en.wikipedia.org/wiki/MAC_address – Not Kyle stop stalking me May 14 '12 at 19:42

They are both correct depending on which model you are using. The Internet Layer in the TCP/IP model translates to the same thing as the Network Layer in the OSI model.

ARP is used to resolve the MAC addresses, and work on Layer 2 of the OSI model.

Network Models

  • en.wikipedia.org/wiki/Address_Resolution_Protocol The Address Resolution Protocol is a request and reply protocol that runs encapsulated by the line protocol. It is communicated within the boundaries of a single network, never routed across internetwork nodes. This property places ARP into the Link Layer of the Internet Protocol Suite, while in the Open Systems Interconnect (OSI) model, it is often described as residing between Layers 2 and 3, being encapsulated by Layer 2 protocols. However, ARP was not developed in the OSI framework. – barlop May 14 '12 at 19:25
  • en.wikipedia.org/wiki/Link_layer The link layer [....useful stuff...] Another term sometimes encountered, "network-access layer", tries to suggest the closeness of this layer to the physical network. However, this use is misleading and non-standard, since the link layer implies functions that are wider in scope than just network access. Important link-layer protocols are used to probe the topology of the local network, discover routers and neighboring hosts, i.e. functions that go well beyond network access. – barlop May 14 '12 at 19:27
  • @barlop: What you say does not contradict my answer though, does it? – paradroid May 14 '12 at 20:05
  • I wouldn't go as far as to say it contradicts it, but it shows some inaccuracies. e.g. ARP is on or between layers 2 and 3 according to wikipedia, and you just say 2. And network layer is broader than the internet layer. en.wikipedia.org/wiki/Internet_layer (Edit..find..OSI) and whatever above, just show some inaccuracies. – barlop May 15 '12 at 1:31
  • This diagram incorrectly maps the OSI physical layer to the TCP/IP network access layer. It really maps to the link layer. It's true that many sources don't consider the link layer to be part of TCP/IP, but that doesn't make the mapping correct. – Isaac Rabinovitch Sep 16 '12 at 19:11

It may belong in layer 3, as is widely documented.

But it really does its work in layer 2, as is also widely documented.

  • I think the confusion with Layer 3 is because it is part of the system to link IP addresses to network interfaces, but it actually works on Layer 2. – paradroid May 14 '12 at 19:07
  • @paradroid Given that it reads/writes IP and MAC.. Why do you say it "works at Layer 2", and not that it "works at" Layer 3? I suppose you might mean that physically the circuitry that does ARP is in the NIC(though Physical is Layer 1!). But where things are physically are not what the layers are about.. It's just conceptual and the issue is -function-. ARP doesn't really fit as neatly and simply into the model as other protocols do. Why do you or why would you have said 2 rather than 3 or both? – barlop May 14 '12 at 20:22
  • 1
    @barlop: Because ARP requests are only broadcast within the broadcast domain/subnet (ie. Layer 2). It only has anything to do with Layer 3 as much as any other protocol relates to higher and lower layers, as they are all parts of a system. As I said, ARP is needed to link IP addresses to network interfaces, hence the confusion, but it only works on Layer 2, as it is used to resolve MAC addresses. – paradroid May 14 '12 at 20:34
  • @paradroid Working within a subnet is not a reason to say it's layer 2 - bear in mind that you have all the layers even within a subnet. Suppose that within a subnet, you run HTTP protocol between two computers. There you have all layers within the subnet. <ENTER> NEXT, you write "[ARP] only has anything to do with Layer 3 as much as any other protocol relates to higher and lower layers, as they are all parts of a system" <-- Not clear what you mean there - and bearing in mind you perhaps thought I said something that disagreed with that. – barlop Oct 8 '15 at 9:25

Not the answer you're looking for? Browse other questions tagged or ask your own question.