In SDN network, there are control and data planes. I want to know if routing protocol runs in routers in data transfer plane? If that,there is no difference with tradition network. Or the routing protocol table will be sent to controller and controller will have all route tables.
SDN is still being developed, so there are no hard and fast rules. But generally speaking, the controller has a complete view of the network, so there is no need for a routing protocol.
However, there is still the problem of how the switches forward control plane traffic to the controller. Some solutions have the switches run a routing protocol so they can learn the path to the controller. But that is a control plane function, not a data plane one.
The routing table is in Control plane because it is where routing protocols such as OSPF, IBGP, BGP, EIGRP control how the protocols (ipv4 and ipv6) will be routed. With this, the routing protocols will remain in the Controller, because in traditional networks, the plane control is distributed by several network devices.
SDN has developed to separate the control plane and data plane from traditional network device. Why, Difficult to do new innovations or develop new technologies like protocols It provides network level abstractions, centralized control plane where easy to made changes in whole network, fast conversions like if a device fail, it will optimise network topology by isolate device in new topology logically and various other features
SDN generally accomplished with SDN controller and no. Of virtual or physical devices where controller loads rules to synchronize topology as per instructions provided by network admin
SDN centralizes most of the distributed routing algorithms used in routers. SDN however is also a system for a single domain or collection of domains under a single network operator. Within this the need for routers is eliminated.
When a network operator's SDN domain(s) talks to another network operator's domain (SDN or otherwise), it uses inter-domain protocols such as BGP. Often a router is kept on the edge of an SDN network to facilitate this. There is ongoing research for how to do this better however a truly global SDN super-controller is problematic for both political (who controls it?) and technical reasons (eg. maintaining a database of the globes IPv6 addresses is a non-trivial). problem).
To answer the last part of the question, the controller typically holds in memory a graph of all the switch nodes in the domain. Consequently it does not typically need route tables. It is forwarded a packet from a switch which contains the destination, the controller searches the graph for the fastest (or cheapest, or ...) route to the destination and immediately creates and installs new switch rules in every switch en-route.