I promised I would write about the new network topology I realised by using my brand new wireless router. I installed DD-WRT on my new linksys WRT54G2. Now I will show how to configure it, so you don’t need an extra switch in a common telenet configuration. First I will describe the old situation and explain why it is done that way. Next I will describe how I managed to get the same result, using just one device and a bit of configuration magic.
So what is the old situation?
Old situation with separate switch and router. The blue lines are COAX cable, the green one is scart/hdmi, the purple ones are UTP (network) cables.
This is how telenet installs it. They provide an extra hub, to split the connection between the digibox / digicorder and the internet connection. It is necessary for the digibox/digicorder to work, that it can get an external (telenet-internal) ip address from a dedicated range (10.169.*.*). If the hub or switch would be removed, and the digibox/digicorder plugged into the router, it would get a private ip (192.168.1.*), from the routers lan-dhcp range. This is because the usual configuration of cheap router, does not allow to the split its switch-interface between internal and external ranges. It has one fixed WAN (wide area network) port, and the other ports are for the private network.
The new situation
elimination of the hub via VLAN
This is my current setup. It’s almost the same, but now without a separate device for giving the digibox/digicorder its dedicated external ip address. It is now done using some configuration magic.
I used one of the fixed internal network ports to form a WAN-switch. This can be done by configuring a VLAN where this interface, and the WAN port are combined, which leaves me with only 3 internal fixed network ports. This is enough for me. One for my fixed computer, one for my XBOX360, and I even have on left unused. My other computers are connected to my private network using Wifi.
This is how you configure it using DD-WRT: It is as easy as unchecking, and then checking another checkbox, and saving the settings. (rebooting the router if it doesn’t work the first time)
checking the checkboxes
Click the image to get the full size. The result is the same as if you would have the extra physical switch in between, only now, it is implemented as a “virtual” switch inside the router.
The advantage
You only need one device, where you used to have two. This saves a UTP cable, a wall-plug, the space to put the switch and lots of energy (= money). I have not calculated how much energy my old setup consumed, and now that the router has died, it is also no longer possible, but I guess that in this case one device consumes less energy than two. If someone has a kWh meter, I will gladly measure the energy consumption. We can than compare and calculate how long it takes before the new router has paid itself back.
What would be the impact if all telenet customers (that have internet + digital tv) changed their configuration? How much energy would be saved? I have always wondered how much energy the telenet customer side setup costs in terms of energy. There are so many boxes in my closet, all plugged in, are they really all necessary?
Last week, my old wireless router died on me. Actually the power supply stopped working. It was a topcom router, I bought at aldi, for just under 80€ a little more than three years ago. So the warranty had only just expired for a couple of months. It had been acting strang lately, losing dns-caches and disconnecting wired clients, for no obvious reason. I was still very happy with it. It was cheap, fast (108Mbps wireless), secure and reliable. It came with a wifi-usb key too, which I rarely used. If someone has a spare 5.0V DC 2.0A power supply, just let me know I used to experiment a lot with that little router. Once I made a parabolic signal director for it, boosting its range to up to 300m.
So last week, I searched for a solution. I wanted a cheap, but comprehensive solution. Something I could use to play with a bit, without spending too much money. I started reading some reviews, and found that the Linksys WRT54GL is a favourite among open source firmware enthousiasts. I found that it looked ugly and was more expensive than the WRT54G2. I found that the WRT54G2 too is supported by DD-WRT, a fully featured open source firmware. So I ordered it from routershop.nl, and two days later, yesterday, it arrived by mail.
This device looks nice, an important point for me, because It lives next to my TV, in the living room.
I played with it a bit, but found that out of the box, the possibilities for configuration are rather limited. So I flahed it with the new firmware. This page details the process, which is actually rather painless. There were only two (known) problems I encountered. The first is that the tftp program for sending the new firmware to the device didn’t work under windows Vista. This was not a problem for me, I just booted into XP and everything worked as described. The second problem was that after setting a new password, I couldn’t save any of the settings I wanted to change. I did the 30/30/30 reset, which means pressing the reset button for 90 seconds, while killing and restoring the power to the device after half a minute. After that I was able to configure the device to my liking.
I was very impressed with the possibilities the DD-WRT firmware opens for such a cheap device.
DD-WRT control panel. Very user friendly, every setting at your fingertips.
In a next post, I will describe the network topology I realized with it. I used to need an extra network-switch to give an external IP to my telenet digibox/digicorder.
On 11, 12 and 13 May 2 colleagues and I went to london for the Progressive .NET exchange organized by Skills Matter. It turned out to be a very interesting conference, with many renowned speakers from the open source .net scene. The conference had 2 concurrent tracks to choose from. On the first day I chose to go to Gojko Adzics sessions on specification by example and fitnesse. In this session Gojko presented the idea to use examples to drive requirements specification. It was a very intense workshop that used the game of Blackjack as an example to make the point. In small groups we were asked to write a full specification for the rules of Blackjack using just examples. It turned out to be very useful to use examples, as it presses on the importance of “the what” and “the why” over “the how”. In the afternoon session we implemented Fitnesse to automate the acceptance testing for the application. I had never seen Fitnesse and it was funny to see some concepts converge. The easiest way to describe Fitnesse is to say that it is a wiki with green and red bits. You write wiki pages to describe the acceptance criteria for a project, and you specify examples to back up the description. You use tables to layout the examples, which can than be automatically verified by Fitnesse. If someone is interested in what this is, and how it works, I might be able to give a short demo during one of the next KSSs.
Tuesday morning I chose the Robert Pickering session. It was on the programming language F#, a topic on which he has written a book and has extensive knowledge, but the session was more on syntax, and he’s not a very good speaker. A little bit of a disappointment. The afternoon I went to Ayendes Advanced NHibernate workshop. It was very intense. He tackled 25 topics in 4 hours, answering questions from the audience. From caching over security toward meta data. Later that night we went to the alt.net UK beers, which was a very interesting experience. It was a dynamic discussion based on topics suggested and elected by the audience, hosted in the cellar of a pub, with lots of free beer. People shouting, giving opinions and laughing. Very fun indeed.
Wednesday – the final day – I attended the sessions of David Laribee. Towards a new Architect, Lean, Kanban, Team Values, Diverging and converging brainstorming specification sessions. These sessions were very practical. In small groups we discussed team values – defined what matters most in a development team, where the priorities for all stakeholders essentially lay. We worked together to define a new product – a medical device to manage patient data and facilitate doctor interaction and his daily work flow. We did this using a “design storm”. First everyone created something individually, then we came together in small groups of five and compared the results. Made a group synthesis and presented the results. Then the entire group discussed the results and moved towards an agreed upon result. In the afternoon, we continued to build a product, but this time a site to play a fantasy soccer strategy game, based on the real soccer players and results from matches. It was a lot of fun, and the exercise tried to show how agile, lean and kanban can be useful in software planning and development. Other interesting subjects that came up during this sessions were the pomodoro technique, Towards new Architecture, ten usability heuristics, …
The only downside of the conference was the dodgy Internet connection. Otherwise it would have been even more enjoyable and interesting. Overall it was very instructive and lots of fun!
See what other people had to say about it.
Cloud computing is a model where big corporations host and manage an IT-infrastructure (and offer services to clients, obviously). These big corporations have to invest heavily in big en powerful data centers to be able to host Internet-scale applications.
At work, we have been investigating and discussing Azure, which is Microsofts future cloud offering, in a Special Interest Group (Led by Yves). The most important business cases where it would make sense to use Azure is where customers don’t want to or cannot invest in infrastructure to try out an idea that could potentially become popular.
The Concept of Fail Fast or Scale Fast is important in this respect. Start ups can put some innovative features online, if they catch on: superb, scale it by adding more nodes to handle the traffic. If they don’t catch on: too bad, take it back offline. Other interesting cases include services that are heavily spiked. For example a concert-ticket sales application. Usually all tickets for popular are sold out in 24 hours of opening sales. To handle these spikes, companies have to have a lot of excess capacity, which is not used most of the time, but can hardly handle the spikes when they occur. In such a case the service could just add a large number of capacity for a small period of time.
In the case of Azure, Microsoft built a software-fabric on top of a bunch of connected systems. This allows computing nodes (virtualized servers running the application) to be redistributed and managed within the data centers as Microsoft sees fit (for example to optimize temperature within a datacenter). There is no guarantee that any node will stay up at any point in time. Software developers have to take this into account when designing their software. There are no transactions (in the classical sense). A classical relational database is hard to use. It has to be designed upfront to be scalable. Reliability and Availability are created through the use of replication, partitioning and smart routing.
What about turning it all upside down.
Think about this: instead of limiting the fabric to the corporate data centers, why not take advantage of the “entire” Internet in a peer-to-peer kind of grid. We are all in front of machines that are largely overpowered most of the time, so why not let cloud-provider use this excess capacity in return for a small fee or other compensation to cover the energy bill. You could allow a portion of your own system to be taken up by a virtual machine, which is managed by the cloud-provider, you don’t have to worry about it. It’s there, eating away your idle CPU-cycles — or not. The cloud-provider pays by use, noting less, nothing more. If for example Microsoft would go this way, they would not have to do so much work. Their own processing nodes too can fail, and the fabric is very capable of handling such cases. The only thing they would have to do would be to support more types of hardware (virtual-PC runs already on a lot of systems out of the box). Create some infrastructure (set up the p2p network). Invent some smart algorithms to take advantage of locality in the network plus basic resource management.
Something similar already exists in other context. Think about large-scale 50.000+ node bot nets (used to relay spam, ddos, …). Think about BOINC.
Why not try to take advantage of all those wasted CPU-cycles? I think this can have huge advantages in the future. Due to the distribution of the load, cloud-providers have to worry less about cooling, energy, availability (if the network and management can be really distributed and self-healing). A possible problem is that it is not so easy to predict available capacity, but they could restrict the use of off-premise nodes to the cheapest best-effort SLA’s (no hard guarantees in the service contracts).
Another thought: The cloud-provider could try to move the load users are generating back to their own machine, if they are sharing resources. If someone is using a web-application, why not host the compute intensive load on their own machine, making the use of the service cheaper. This is where I come full-circle;
Any feedback is hugely appreciated.
Today I came across an interesting offering: cheapvoip.com
This is a provider of voip telephony. This makes it possible to call fixed landlines in belgium for free from a computer (free software client, comparable to skype) or supported sip enabled device.
In practice this means anyone can call me for free (you have to create a free account, and buy credit for at least 10€) on my company phonenumber, which is routed automatically and for free (costs paid by my employer) to my cellphone.
Another interesting offering is phone2phone voip calls, where you let cheapvoip set up a call between two parties at interesting rates. Usually this is cheaper than calling yourself, especially for cross network calls.
I recently blogged about the fact that my sister wanted to download a movie file from picasaweb. Now I found a much easier way to do it. Just use firefox, add the “Download Helper” add-on.
There will be an extra button on the address bar. Just view the movie (whereever) and click the button. It will allow to download the movie-file (it will be an .flv file, which you can watch using vlc.
Hope this helps, (In true ScottGu style)
Jeroen
Tech-ed in Barcelona was fantastisch:
Hier volgen alvast enkele foto’s. Een verslag volgt.
It’s saturday November 8th, 4:52 and I’m wide awake in bed. These are the times that really good (!?) ideas begin popping in my head. Today I felt the need to write some of them down.
A (web-) application to consolidate contact-information.
Yesterday evening, I was looking at how the Google Contacts API works. At that time I began to realize how usefull it would be to have some kind of application that consolidates contacts from different sources. The contacts I’m thinking about could come from outlook, gmail, yahoo, linked-in, netlog, facebook, plaxo, myspace, adressbook, windows live mail, you name it. I still had not registered the free domain name that comes with my new hosting, so – what the heck – I just registered consolidatr.net in true web 2.0 style, just in case I ever want to create such an application.
What I was thinking – not yet done the math – is that it could be cost-effective to use of-the-shelve batteries (AA) that are quite powerful, yet cheap to reduce stand-by costs of appliances.
The Idea is that when a led and IR-receiver of for example a tv-set are to be powered, an amount of energy is wasted in the conversion from 220 alternating current (AC) to low voltage direct current (DC). So to cut that cost a fairly simple technique could be used. Let me elaborate.
Take a simple electronics circuit that houses some functionalities you want in your appliance. Power that circuit with a battery and add some logic to make sure the battery doesn’t completely drain.
For example, you want to be able to turn on and off your TV-set using the remote. What you need than is a IR-receiver. The TV-set would remain plugged in. A circuit with the receiver, a voltage meter, some logic and a relay would be needed.
When you turn off the TV – using the remote – it will go into a stand-by state. Lets take the power to support this state from a battery. The switching circuit would – in case enough power is available from the battery – completely cut power to the tv-set using a simple relay, from that time no more energy from the grid is consumed. When the battery is losing its charge, at a certain threshold, the circuit could restore power to the tv-set, such that the stand-by state is powered from the grid, and the battery is charged. (The battery would be charged when the tv is on too, of course)
A fail-over would be in place, such that in case no battery was present, or when the battery is worn out, your tv would still work, it would than just fall back to using the grid to power its stand-by state. The battery should have to be user-servicable.
Now for the math (this is just guessing…)
Cost per year: 3€
Energy saved per year: according to http://www.standby-killer.nl/: 10€
this means 7€ saved per year. This doesn’t seam like much, but how many devices have you got, that are on stand-by?
If government would promote this, and everyone starts using this kind of technology (on more than just tv-sets) it would globally really make a difference.
It would even be better if it were possible to retrofit this kind of technology to existing devices!
Just invent a battery-enabled switchbox with a remote, put it between the TV-set and the grid and there you have it. It would cost a bit more, because the charging must now be done, either outside the box, or the switchbox would need a charging circuit.
The downside of using batteries of course is that they need to be recyclable, and I don’t know how well they are.
Ok, so how many appliances and devices in your home use low-voltage direct current? If I think about it: A lot. Every device that has an adaptor (separate power supply), that has some led’s or clock showing…
So, microwave, alarmclock, PC and peripherals, telenet-devices (cable modem, splitter, amplifier, digibox, networking equipment (Powerline Ethernet)), tv, dvd player, stereo, radio, battery chargers, mobile phone chargers, electric toothbrush, digital picture frame,…
My thought was: couldn’t it be cost-effective to have 1 central, high quality, efficient, powerfull “power supply” in the house, that all these other devices could get their DC from?
I am aware though that transporting low-voltage, potentially high current electricity over a distance is a problem due to resistance, but I’m talking in the scope of a home. I’m also aware that all these devices have different requirements qua voltage, current, what have you,… so some smart sockets would be needed.
I’m not going to do the math on this one, because I simply don’t have any data.
I’m going to try and get some sleep…
Het kan een tijdje duren eer de afbeelding geupdate wordt. Er zijn natuurlijk mensen die niet kunnen wachten . Er is nu ook een vaste pagina.
Ik heb eens in de code van de flickr-badge (hier rechts) geneusd, en gevonden hoe je kan aanpassen hoeveel kolommen en rijen foto’s weergegeven worden, en in welke grootte. Standaard wordt gebruik gemaakt van een iframe, wat uiteraard suckt . Als je in de code van deze pagina kijkt, zal je zien hoe ik de gebruikte javascript geïntegreerd heb in WordPress-sidebar.php. Veel beter resultaat.