What layer of the TCP/IP network does ARP belong to?

-2

1

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?

user590903

Posted 2012-05-14T18:52:00.077

Reputation: 121

Question was closed 2012-05-14T19:34:35.483

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 – 2012-05-14T19:02:00.267

+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 – 2012-05-14T19:19:16.610

1paradroid 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 – 2012-05-14T19:29:08.127

I second @DiogoRocha's opinion. – Fran – 2012-05-14T19:32:32.627

@Logman Most of what you said is obvious. And the second from last sentence about ARP being at the Internet Layer of TCP/IP is actually wrong - compare to what wikipedia says , see my comments from wikipedia. And what paradroid said too, also, compare to wikipedia. – barlop – 2012-05-14T19:35:32.300

1ARP 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... – Supercereal – 2012-05-14T19:38:07.737

@Kyle Does ARP read/write IPs and MAC addresses? That'd put it -between- layers 2 and 3 of the OSI. Not surprising that wikipedia says so too. And as for the TCP/IP model, that is apparently complicated enough that it fits into the link layer despite what others have said! So I think we're all non experts, but see wikipedia, it's very descriptive on this. – barlop – 2012-05-14T19:39:49.003

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. https://en.wikipedia.org/wiki/MAC_address

– Supercereal – 2012-05-14T19:42:20.460

barlop, IP is the primary protocol in the Internet Layer of the Internet Protocol Suite... check the Wiki: http://en.wikipedia.org/wiki/Internet_Protocol

– Logman – 2012-05-14T22:03:01.540

ARP works at both layer 2 and 3 of the OSI. Which means it works at both the Internet and the Network Access layers of the DoD model. Grey? yes it is... there is no clear delineation. from the wiki: "However, ARP was not developed in the OSI framework." – Logman – 2012-05-14T22:18:03.363

@Logman All the things we use are TCP/IP. OSI Was never used. But we apply the TCP/IP and OSI reference models. Wikipedia says that the layers don't correspond like you think they do, and that ARP operates -only- at the Link Layer of the TCP/IP model. – barlop – 2012-05-15T01:18:11.713

Answers

3

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

paradroid

Posted 2012-05-14T18:52:00.077

Reputation: 20 970

http://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 – 2012-05-14T19:25:41.533

http://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 – 2012-05-14T19:27:09.487

@barlop: What you say does not contradict my answer though, does it? – paradroid – 2012-05-14T20:05:22.013

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. http://en.wikipedia.org/wiki/Internet_layer (Edit..find..OSI) and whatever above, just show some inaccuracies.

– barlop – 2012-05-15T01:31:09.403

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 – 2012-09-16T19:11:59.693

@IsaacRabinovitch: Surely you meant the physical layer in the last sentence? All the diagrams I see on Google have this same mapping. This discusses how it is not really possible to make a direct relationship between the two models.

– paradroid – 2012-09-17T08:10:22.310

@paradroid not quite all http://bit.ly/OzsXQB

– Isaac Rabinovitch – 2012-09-17T08:22:51.113

2

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

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

Mike

Posted 2012-05-14T18:52:00.077

Reputation: 301

@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 – 2015-10-08T09:25:19.703

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 – 2012-05-14T19:07:37.920

@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 – 2012-05-14T20:22:08.000

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 – 2012-05-14T20:34:58.123