I need a terminolgy/technology demystification thread.

Post new topic   Reply to topic    DD-WRT Forum Forum Index -> Broadcom SoC based Hardware
Author Message
Murrkf
DD-WRT Guru


Joined: 22 Sep 2008
Posts: 12676

PostPosted: Tue Sep 30, 2008 18:13    Post subject: I need a terminolgy/technology demystification thread. Reply with quote
Most of the people on this forum are talking WAY over my head in a lot of the responses. Much of what is being discussed is way beyond my knowledge level. I have noted that everything is explained very well in a step by step process that enables people to do what they need to do, there isn't much discussion about how things work and what they are.

It would be useful for people like me to be able to *understand* things more fully so I would like a thread that does this, where people can feel free to ask questions to increase overall understanding.

I would, for example, like to understand what Nvram, CFE and kernals are. (I sent my router's CFE to the CFE gathering project and don't have a clue what I sent or why anyone would want it!)

If someone could explain what each of these is, I would appreciate it. If others have questions they wish answered, feel free to post them.
Sponsor
chjohans
DD-WRT User


Joined: 27 Mar 2008
Posts: 196

PostPosted: Tue Sep 30, 2008 19:26    Post subject: Reply with quote
Oh my, where to start.... :D

You can read more about nvram here: http://en.wikipedia.org/wiki/NVRAM

CFE = Essentially the boot sector of the router. It loads before DD-WRT (or the factory firmware, or whatever other firmware you have installed)

Kernel = The most central component of most operating systems. dd-wrt is based on Linux so in this case it is essentially the "running core" of the Linux OS inside your dd-wrt router.

But your real problem, if I might refer to it as a problem without sounding rude, seems to be that you lack basic understanding of Linux (on which dd-wrt is based), routers/routing technology in general and tcp/ip networking. And there is nothing wrong with that, in fact most people in this world know nothing whatsoever about these topics.

But if you really want to understand everything that is written in this forum then go and pick up a few books about these topics and prepare to spend a good portion of your time to read about and learn this stuff. dd-wrt is kind of a "router operating system" based on Linux. To fully understand this you must know Linux, routers/routing technology in general and tcp/ip networking very well. And there is no way this forum can teach you that.

Another option is of course to sign up for a degree in Computer Science at your local College/University Smile
redhawk0
DD-WRT Guru


Joined: 04 Jan 2007
Posts: 11468
Location: Wherever the wind blows- North America

PostPosted: Tue Sep 30, 2008 21:21    Post subject: Reply with quote
Agreed....another really good place to get some definitions is the wiki glossary. It can provide the basics for some of the terms used here.

http://www.dd-wrt.com/wiki/index.php/Glossary

Anything you still don't understand...google is an excellent source...just use the key words you don't understand.

redhawk

_________________
I do NOT provide personal assistance through chat or phone....so please don't ask.
Murrkf
DD-WRT Guru


Joined: 22 Sep 2008
Posts: 12676

PostPosted: Tue Sep 30, 2008 21:27    Post subject: Reply with quote
So...in a simplified form. CFE is the boot program, and if it loads before the firmware, then I take it that the CFE for my router will be the same whether it has stock firmware or DD-WRT. Is that correct?

NVram is where my specific settings are stored?

The kernal would be the specific DD-WRT program itself?

You are correct that I don't know about linux, but I do know about DOS!

I am not looking for a course in this but I do find that sometimes some of these terms are bandied about as if everyone understands them, and there is a HUGE disparity in the knowledge that different posters have. I just want to be able to understand the basics, as they relate to DD-WRT.

One of the reasons that I feel that this information is needed is due to the fact that, when I have searched, often I have come up with what appears to be very important information that is beyond my ability to understand. Having a thread for noobs like me where questions can be asked and answered would likely be valuable for many.

Thanks for the input thus far.
jmounts79
DD-WRT User


Joined: 20 Sep 2007
Posts: 218

PostPosted: Tue Sep 30, 2008 22:18    Post subject: Reply with quote
While alot of things have been answered already;

howthingswork.com is a good resource for easy to understand explanations on subjects.

or if you would like more real-life answers, on IRC-undernet in the channel #computerhelp there is a nice set of people that have a good handle on the IT real world and how shit REALLY works.


Tons of resouces, just gotta know how to use them Smile
Murrkf
DD-WRT Guru


Joined: 22 Sep 2008
Posts: 12676

PostPosted: Wed Oct 01, 2008 1:53    Post subject: Reply with quote
Some of the information...in fact MOST of the information I need to understand is DD-WRT specific. I would like to know if my understanding of CFE, kernal, and Nvram is correct. Another thing that I keep seeing is specifically what is meant when people talk about "telnet into" the router. I have searched and understand that telnet is a way of communicating and that commands can be sent this way, but what program is running to do this? Is it only available on linux os?
redhawk0
DD-WRT Guru


Joined: 04 Jan 2007
Posts: 11468
Location: Wherever the wind blows- North America

PostPosted: Wed Oct 01, 2008 2:59    Post subject: Reply with quote
Murrkf wrote:
Some of the information...in fact MOST of the information I need to understand is DD-WRT specific. I would like to know if my understanding of CFE, kernal, and Nvram is correct. Another thing that I keep seeing is specifically what is meant when people talk about "telnet into" the router. I have searched and understand that telnet is a way of communicating and that commands can be sent this way, but what program is running to do this? Is it only available on linux os?


Telnet is a command line tool for entering linux commands to the unit directly.

Windows....Start....Run....type in cmd
A window pops up.

type telnet <your IP address>

It will ask you for your routers login.

As for the structure of the router flash chip

CFE is the Common Firmware Environment. It is the heart of the hardware configuration of your router. It is the bootstrap program that knows what your hardware is and will allow firmware to run on it.

NVRAM is Non-Volital Random Access Memory....it is where variables are stored that may change in the process of configuring your router...for example...if you change your router's IP address...that is an NVRAM variable. NVRAM is shared by the CFE and Kernel (next topic). The NVRAM can have variables that were stored when your router first boots up (stored by the CFE) and during the configuration of firmware (stored by the Kernel)....some of the CFE variables may/may not conflict with the firmware environment after the firmware configures itself on your router (initial flash)....so...it is best to clear them before configuring using the hard reset method...then it is safe to configure.

Kernel is the firmware itself. It tells the router what mode to use/do, repeater modes, client modes....power settings, antenna usage, VLANs...etc

Wholeflash encompasses....all the above.

I hope that clears it up.

redhawk

_________________
I do NOT provide personal assistance through chat or phone....so please don't ask.
Murrkf
DD-WRT Guru


Joined: 22 Sep 2008
Posts: 12676

PostPosted: Wed Oct 01, 2008 3:09    Post subject: Reply with quote
Thanks....THAT really helps me understand. It is interesting that when I tried to telnet my router I had to use the default username and password, not the ones I changed the router to with the gui....
redhawk0
DD-WRT Guru


Joined: 04 Jan 2007
Posts: 11468
Location: Wherever the wind blows- North America

PostPosted: Wed Oct 01, 2008 3:12    Post subject: Reply with quote
Murrkf wrote:
Thanks....THAT really helps me understand. It is interesting that when I tried to telnet my router I had to use the default username and password, not the ones I changed the router to with the gui....


Oh...yes...telnet in and the username will ALWAYS be "root" even if you changed the username in the gui.

The password will change from the default though...it will be whatever you set it to.

A hard reset will reset the password also back to "admin"

redhawk

_________________
I do NOT provide personal assistance through chat or phone....so please don't ask.
patwood
DD-WRT User


Joined: 29 Jul 2008
Posts: 118
Location: NJ, USA

PostPosted: Wed Oct 01, 2008 3:55    Post subject: Reply with quote
Personally, I like wikipedia for terminology definitions.

telnet is essentially a "terminal emulator" for network connections. Think of the olden days when we used a terminal emulator to dial up a computer and log in for remote access (with a modem for pity's sake -- did I actually do that on a daily basis?) telnet is the equivalent of this, but it connects to computers via a TCP/IP port. (Think of a port as a virtual connection into a server -- different network applications connect via different ports; browsers connect over port 80, telnet over port 23, ftp over ports 20 and 21.)

As for kernels, different operating systems define their kernels slightly differently. Some, like MACH, have very small kernels, and almost everything, even file systems and virtual memory management, lives in some level of protected user space (for security and reliability reasons). Some, like unix/linux, include file systems, virtual memory, thread management, process management, networking, etc., in the kernel. Optional features (nonstandard file systems, USB and network drivers, etc.) can be loaded and unloaded on the fly without rebooting the system, but are still considered part of the operating system kernel. User programs, including the shell (think cmd.exe), commands that users type in, file sharing programs (samba, nfs), web servers, and the like are not formally part of the kernel.

Pat
Murrkf
DD-WRT Guru


Joined: 22 Sep 2008
Posts: 12676

PostPosted: Wed Oct 01, 2008 12:57    Post subject: Reply with quote
So, when one flashes the firmware, using the gui, the flash erases the nvram, replaces the kernal, and leaves the CFE alone so the router can boot?

I tried wikipedia, and could find nothing! Wink
redhawk0
DD-WRT Guru


Joined: 04 Jan 2007
Posts: 11468
Location: Wherever the wind blows- North America

PostPosted: Wed Oct 01, 2008 13:25    Post subject: Reply with quote
Murrkf wrote:
So, when one flashes the firmware, using the gui, the flash erases the nvram, replaces the kernal, and leaves the CFE alone so the router can boot?

I tried wikipedia, and could find nothing! Wink


Partially correct.

Yes it replaces the kernel...no it doesn't clear the nvram....this is why we recommend a hard reset BEFORE and AFTER a firmware update. We want it cleared after the firmware load so we don't get any nvram variables left over when the firmware configures itself (not configuration variables)....we want only valid CFE and Kernel nvram variables....hard reset clears them and reboots the unit which gives only valid nvram variables.

The CFE is never touched by a hard reset or firmware load. It can only be cleared by JTAG with either the -erase:cfe or -erase:wholeflash switches.

redhawk

_________________
I do NOT provide personal assistance through chat or phone....so please don't ask.
Display posts from previous:    Page 1 of 1
Post new topic   Reply to topic    DD-WRT Forum Forum Index -> Broadcom SoC based Hardware All times are GMT

Navigation

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum