Cisco Support Community
cancel
Showing results for 
Search instead for 
Did you mean: 
New Member

OSPF and BGP

Hi all,

Actually, BGP is also one routing protocol as like OSPF with some features to handle large network. But my doubt is why it is called external routing protocol. I thing we can have a network with OSPF itself, without ASes, BGP etc.

What I wonder, why is it not possible to create two ospf domain and connect those two domain using OSPF itself.Like what we do in BGP.

An ospf domain means many areas connected to backbone area.

Thanks,

Vijaybabu

15 REPLIES

Re: OSPF and BGP

Indeed you can have two OSPF domains, and route between them, but also using OSPF to handle routing from one to another may prove troublesome. To join two OSPF domains also using OSPF basically means you merge the two backbone areas.

In a situation like that, BGP gives CONTROL. BGP is an external routing ptocol as it is designed to handle routing between separate domans, its main features being control, scalability and stability.

Re: OSPF and BGP

Hello all!

BGP is in use when networks are under different administration (i refer here to eBGP), meaning different AS numbers.AS numbers are unique attributes, but domain id in OSPF are choose locally and you could be in the situation that your domain id is in use also in your neigbor network.

Br,

Calin

New Member

Re: OSPF and BGP

Hi all,

Thanks for your replies.

But,I am not satisfied with your replies.

Thanks,

Vijaybabu

Re: OSPF and BGP

In what way?

Re: OSPF and BGP

Vijay,

I see you are not satisfied with the replies, but I am not clear what you want from your question.

You ask why is BGP an external routing protocol? Well, because BGP is the protocol that glues the Internet together. You cannot get more external than that. (Unless you are considering Vinton Cerf's extra-terrestrial IP project.)

The model is that the world consists of a whole lot of companies, big and small, each of which has its own internal network, glued together with routers. Each company or organisation is an Autonomous System, and uses internal routing protocols like OSPF or EIGRP. Then BGP is used to interconnect those Autonomous Systems as an Internet.

Sure, a company might decide to have two OSPF domains. And sure, they might decide to connect them together using OSPF or iBGP. But the point it they are self-contained, and under one administrative authority - they are one AS. Then they connect this AS to the outside world using eBGP.

If that does not answer your question, perhaps you could explain your question in more detail.

Kevin Dorrell

Luxembourg

New Member

Re: OSPF and BGP

Vijay,

In addition to the perfectly good answers above, another feature that sets bgp apart in situations like routin between AS', is the bgp's ability to be modular & scalability. I havent tested this, but I dont think OSPF can handle the Internet routing table. Apart, from holding a large table, how would you make routing decisions? Would you be happy to wait for OSPF to calculate SPF algorithms on a huge huge database? Would such a design respond in time to network changes? Would you divide the world into network areas?

As you work more with OSPF/bgp it will become clear that OSPF was fundamentally not designed to operate Internet routing tables, which is exactly what BGP is designed for.

Re: OSPF and BGP

Indeed. BGP is designed for control, stability and scalability. Its role is to route beteern separate domains.

Getting two separate OSPF networks to talk to each other, using OSPF involves one of two methods. Join the backbones and merge the networks properly, or run multiple OSPF processes.

You could join them at any point, but it may involve reconiguration of areas.

Basically to do it, you would nominate the two routers (I'll mention redundtant links later) between the two OSPF networks.

For simplicity, I will assume we are douing this an a router that is purely in area zero, and the internal network is 10.0.0.0, the link is 172.16.1.1/24

router ospf 10

net 10.0.0.0 0.255.255.255 a 0

(puts all 10 into area 0)

red ospf 20 sub

router ospf 20

net 172.16.1.0 0.0.0.255 a 0

red ospf 10 subn

This would create a second OSPF process (with all the overhead that entails), and allocate the transit network to a new OSPF area 0. We would also have redistribution between the OSPF processes. We would do similar on the other OSPF domain.

If we want resilience, we need to do similar at two points in the network. We also need to tag redistributed routes, and use route maps to prevent the redistribution of routes that have already been redistributed - ie looping routes back.

All this would obvious be rather silly, when a protocol exists to handle exactly this scenario - routing between to separate networks.

Re: OSPF and BGP

Hi,

Because of the OSPF nature of operation. When there is an intra-area link change, every router inside that area will re-compute/re-build its routing table.

Imagine if OSPF is use to run the internet with thousands of administrative domain and hundreds of thousands of links, using OSPF will make the internet crawl because routers are busy processing every intra-area change. For BGP, it will just widthraw the route to the path that lost without the need of routing table re-computation/re-build.

Regards,

Dandy

New Member

Re: OSPF and BGP

Hi,

Thanks kevin, luqmankondeth, paul, medan for your clear explanation.

@luqmankondeth

Would you be happy to wait for OSPF to calculate SPF algorithms on a huge huge database? Would such a design respond in time to network changes?

>>>I haven't think of this, very very valid point.

Would you divide the world into network areas?

>>>I don't want to create the whole world using OSPF, atleast within corporates.

@paul

Getting two separate OSPF networks to talk to each other, using OSPF involves one of two methods. Join the backbones and merge the networks properly, or run multiple OSPF processes.

All this would obvious be rather silly, when a protocol exists to handle exactly this scenario - routing between to separate networks.

>>> I know joing the backbones and running two ospf process are silly and not a good design.

But, no one has answered my last question 'why is it not possible to create two ospf domain and connect those two domain using OSPF itself.Like what we do in BGP.' or in another way 'why John Moy hasn't proposed OSPF in terms of domains and then connecting domains using OSPF?'

For eg. Consider my company want to design the corporate network with two routing domains one for India and the other for US . why can't I just create two OSPF domains, with each domain has area0 and other areas and then connect these two domain using OSPF, why I need a separate protocol to connect these two domain ? why OSPF is not proposed in that way ?

I know the constrains like SPF algorithm, large routing table, but in furute speed and memory are no more constraints, I feel so.

I am not arguing here, I am just thinking in the other way.

I am expecting Rick to join this discussion.

Thanks,

Vijaybabu

Re: OSPF and BGP

I thought I had answered that!

OSPF Rules mean there is *ONE* backbone area. If you want two OSPF networks to talk, you join the backbones such that there is only one backbone area. Antyhing else will cause problems. All areas should be directly connected to the backbone, and the backbone must be contiguous. To join two OSPF networks using OSPF, you join the backbones. The right way is to join the backbones properly. There is always the klugde of virtual links, but they are for people that don't understand OSPF or emergencies (probably caused by not understanding OSPF and allowing the backbone to become partitioned).

So, if you have two OSPF networks to join, and you don't want to join the backbone, but you want OSPF to be the inter-AS routing protocol. you need to use a third OSPF network, but you don't join them as such.

To your example of India and USA, it would be good to treat them as two regions, and within each region have a properly designed OSPF topology, BUT if you want to join them together *USING OSPF* you join the backbones, and make sure the backbone is resilient.

The alternative in your design if you *MUST* have effectively one OSPF network is to treat the USA as one area, India as another, and the international links become the backbone. That could mean you have overly large areas.

If you want two comparatively separate networks, that have a concept similar to areas, that you can just join, OSPF is not for you. Step forwards ISIS. ISIS could be overlaid on an OSPF network, using the same areas, but it does not have the strict rules about the backbone (heck, it does not even have a concept of backbone!) that apply to OSPF (there shalt be one backbone, for I am a jealous routing protocol, all areas shall join the backbone, and shall not talk directly to each other etc)

If you want something else that has a concept similar, look at EIGRP and Autonomous systems as area. EIGRP is DV where ISIS and OSPF for link-state. EIGRP is also proprietary.

BGP is the accepted solution to joining two (or more) separate networks, but it is not mandatory. If you only had one link between the USA and India, I would not suggest you use BGP, simply use static routes on the terminating routers.

New Member

Re: OSPF and BGP

Hi Paul,

That was good explanation.

Actually, I asked the above questions to increase my knowledge in routing protocols.

Anyway thanks for your explanation.

Thanks,

Vijaybabu

Re: OSPF and BGP

You are welcome - just remember with OSPF that probably the biggest rule is a single contiguous backbone area is essential!

Paul.

New Member

Re: OSPF and BGP

Hi ,

I hate that rule.

That rule is the culprit for all OSPF constraints. :-)

Thanks,

Vijaybabu

Re: OSPF and BGP

Alas it is critical to OSPF!

Super Bronze

Re: OSPF and BGP

My understanding is you can define and route between two OSPF domains. You would need to redistribute between them, as you would normally do for redistribution between dissimilar routing protocols.

The one advantage of doing redistribution between OSPF domains, attributes would redistribute "better" since you're starting with the same routing protocol. The major disadvantage, are the issues normally seen when doing redistribution between different routing protocols. For instance, each OSPF domain would see the other OSPF domain's routes as injected externals.

One major difference between OSPF and BGP is on the issue of the number different domains you're attempting to communicate between. For just two, OSPF could be fine. For more than a couple (especially for thousands), you're really going to want BGP since that's what is was designed for.

The feature of distribution of various domain's routes, those external to your domain's, is also why it's considered an external routing protocol vs. an internal routing protocol used within your domain. (Note: BGP used internally is known as IBGP for internal BGP, and rules of usage differ from using it externally, as known as EBGP.)

615
Views
24
Helpful
15
Replies
CreatePlease to create content