Please consider this request:
SELECT num, * FROM ( SELECT OrderID, CustomerID, EmployeeID, OrderDate, RequiredDate, ShippedDate, ROW_NUMBER() OVER(ORDER BY OrderID) AS num FROM Orders ) AS numbered WHERE NUM BETWEEN 0AND 100
when I execute this request and get the execution plan, it looks like this:

I want to know
1) What steps do SQL Server 2008 pass to add ROW_NUMBER() to the query?
2) Why at the first stage in terms of implementation we have a Clustered Index Scan ?
3) Why is the cost of filtration 2%? I mean, why does the sql server not scan the table to get the corresponding data? Does ROW_NUMBER() index creation?
Arian source share